var getName = function(){
console.log(4);
}
function getName(){
console.log(5);
}
getName();//结果是?
许多人会以为结果是5,其实
正确答案:4
原因在于:
区别:
(1)function getName(){
console.log(1);
}
(2)var getName = function(){
console.log(2);
}
(1)是函数声明,(2)是函数表达式
简单举例说明:
写法一、
b();
var b = function (){
console.log("b")
}
//会报错 - b is not a function
写法二、
b();
function b(){
console.log("b")
}
//不会报错,代码执行时js引擎会将声明语句提升至代码最上方,此处的function b()已经被提升到顶部