可能重复:
JavaScript scope and closure
JavaScript - self executing functions
以下代码之间有什么区别:
var someVar = (function(){
// some code
})();
并且
var someVar = function(){
// some code
};
您能指点我关于第一个代码的用法和解释的教程吗?
很难在Google上找到答案,所以我想我会在这里问。
谢谢。
答案 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