匿名函数与立即执行函数
匿名函数:
function(a, b) {
console.log("a = " + a);
console.log("b = " + b);
};
立即执行函数(函数执行完,立即被调用):
(function(a, b) {
console.log("a = " + a);
console.log("b = " + b);
})(123, 456);
l 匿名函数不能直接使用。
l 匿名函数可以依附于一个变量,并且这个变量名就是这个匿名函数的名字。
l 当匿名函数用在绑定事件中的时候,当这个事件执行的时候这个匿名函数也会被执行。
l 如果将匿名函数放入到表达式中并且后面加上小括号会自动执行这个函数(立即执行函数)
l 匿名函数不只是可以依附于一个变量,也可以依附于一个对象的属性
l 同样的匿名函数当做一个对象的属性时也可以自调用。
l 匿名函数也可以传递参数
l 对于表达式函数同样也可以传递参数
l 如果将一个自执行的匿名函数并且没有返回值,赋值给一个变量那么这个变量的值就是undefined。因为这个函数在赋值之前已经执行完了,而这个函数没有返回值,所以就是undefined,如果有返回值,那么这个变量的值就是那个匿名函数的返回值。