【问题标题】:While assigning a function to a variable in JS, why does it gets executed automatically?在JS中为变量分配函数时,为什么它会自动执行?
【发布时间】:2016-04-22 00:46:29
【问题描述】:

我来自 Python 背景,部分理解函数是 Python 和 javascript 中的第一类对象的概念。

但这种行为在我看来很不寻常:

$ node
> function calc(){console.log('hey');};
> var a = calc()
hey

【问题讨论】:

    标签: javascript node.js function object


    【解决方案1】:

    您的示例中的() [var a = calc();] 表示您要调用该函数。

    如果你想将函数分配给一个变量,你应该这样做 -

    var a = calc;
    

    那么,如果你想调用它,你可以使用

    a();
    

    【讨论】:

      【解决方案2】:

      只用试试

      function calc() {
          console.log('hey');
      };
      var a = calc;
      a(); // hey 
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2020-11-17
        • 1970-01-01
        • 1970-01-01
        • 2015-12-02
        • 1970-01-01
        • 2010-10-25
        • 2020-04-23
        相关资源
        最近更新 更多