先上代码
function aa(){
alert("123");
}
var bb=aa();
上面这段代码中
var bb=aa();
这条语句属于什么行为?
是调用函数?
还是声明一个函数表达式?
我之所以这样问,是因为,这段代码alert了123,
我的疑惑在我只是声明了一个var bb却执行了函数,如果把上段代码写成一个表达式:
var bb=function(){
alert("123")
};
就不会alert,123
求解 谢谢
调用aa函数,将aa函数返回值赋值给bb,第二种是将函数赋值给bb,你没有调用当然不会alert
var bb=function(){
alert("123")
};
bb()
把函数aa 看成一个对象 。 括号的意思是 执行这个函数。 var bb=aa(); aa赋值给bb 并且执行了。 var bb=aa; 代表不执行 可以在写bb(); 执行。
var bb=function(){
alert("123")
};
这个是 只定义了一个函数。
写成这样子就执行了:
var bb=function(){
alert("123")
}();
js对象赋值
var bb=function(){
alert("123")
};
这只是声明了一个函数,,调用就行了,,,