-
调用方法fn()
//函数声明会自动提前声明(在当前作用域),可以随意在前后调用fn()
函数声明function fn(){} -
函数表达式 var fn=function(){}
调用方式fn()//函数调用必须在函数表达式之后
-
匿名函数 function(){} //赋值给变量就变成函数表达式,成为上述第2点 ,如果赋值给事件 如:element.event=function(){} 则会成为事件处理程序
关于函数后加()
函数声明后加
function fn(){} ()
函数表达式后加()
var fn=function(){}()//结果会立即执行此函数
原理是函数表达式后 加 ()
var fn=function(a){
console.log(a)
}(123); //结果是123
如果是匿名函数只要转成下述,即可立即执行,无需使用fn()等方式调用
(function(a){ console.log(a) }(123)) //用整个括号括住,结果是123 或者
(function(a){ console.log(a) })(123) /也是可以立即执行匿名函数,结果是123
不使用括号括住的方式如+function(a){console.log(a) }(123) //结果123 或者 !function(a){console.log(a) }(123) //结果123
使用匿名函数立即执行,原因是 整个()内的变量不会被外部 重写。