1、函数声明:可以定义命名的函数变量,而无需给函数赋值;可以类比变量 声明,先声明 “ var ” ,函数声明要用 “ function ”;
console.log(t()) function t (){ console.log("函数声明") }
2、函数表达式:将函数定义为表达式语句(通常是变量赋值)的一部分,定义的函数可以是匿名的也可以是命名的;不能以function开头;
var s = function(){ console.log("函数表达式") } console.log(s())
区别:
1、函数声明在js解析时候,会被提升,在同一个作用域里,函数声明在哪里都可以被,任何地方都可调用;
2、函数表达式是在js运行时确认,并且是在该函数赋值完成之后,才能被调用;(不然会报错)
console.log(t()) function t (){ console.log("函数声明") } console.log(s()) var s = function(){ console.log("函数表达式") }