函数表达式是Javascript中一个既强大又令人困惑的特性,定义函数的方式有两种,一种是函数声明,另一种是函数表达式。
函数声明语法:
function functionName(arg0,arg1,arg2){
//函数体
}
关于函数声明,他的一个重要特征是函数声明提升(function declaration hoisting),意思是在执行代码之前会先读取函数声明。这就意味着可以把函数声明放在调用它的语句后面。
sayHi();
function sayHi(){
alert("Hi!");
}
第二种创建函数的方式是使用函数表达式。这种情况下创建的函数叫做匿名函数。
var functionName=function(){
//函数体
}
函数表达式与其他表达式一样,使用前必须先赋值,以下代码会导致错误:
sayHi();
var sayHi=function(){
alert("Hi!");
}