需要一些关于在以下样式中声明变量的信息

时间:2012-06-18 20:35:27

标签: javascript

  

可能重复:
  JavaScript scope and closure
  JavaScript - self executing functions

以下代码之间有什么区别:


var someVar = (function(){
   // some code
})();

并且


var someVar = function(){
   // some code
};

您能指点我关于第一个代码的用法和解释的教程吗?

很难在Google上找到答案,所以我想我会在这里问。

谢谢。

1 个答案:

答案 0 :(得分:1)

第一个案例

将创建并执行匿名函数。函数结果将存储在someVar

var someVar = (function(){
    console.log('function executed');
    return 1;
})();
// function executed
console.log(someVar);
// 1

第二种情况

将创建匿名函数,它的引用将存储在someVar

var someVar = function(){
    console.log('function executed');
    return 1;
};

var result = someVar();
// function executed
console.log(result);
// 1