如题:
运行后,a的值是什么呢?132?undefined?
答案是 undefined;
因为,上面的表达式意思是将console.log(123)赋给变量a。我们都知道,console.log(123)是浏览器下的一个内置函数。但是需要注意的是‘123’并不是这个函数的返回值。所以,a的值不是123,console.log()只是实现了一个打印日志的功能。
例子:
var a = (function(){return 123})();// 123 因为这个函数有返回值,为123。
但是
var a = (function(){console.log(123)})(); //undefined