JavaScript进阶 互动版

函数表达式


我们在《JavaScript入门基础》课程的2.2中的关于函数讲解了函数的声明,现在我们来讲解函数表达式

语法:

var funcName = fucntion(参数){ 代码 }

示例:

var sum = function (x, y){
    return x + y;
}

示例中把一个匿名的函数赋值给变量sum,由于var定义了一个声明语句,对变量 sum 的解析是在代码运行之前,因此sum变量在代码运行时已经被定义过了。

但是由于赋值语句只在运行时执行,因此在相应代码执行之前,sum的值缺省为undefined

两种方式都定义了一个函数,那它们两者的区别是什么?