奎奎博客-本网站提供永久免费技术更新,收藏本网站 www.kk520.top 教程持续更新!

JS函数表达式的声明提升

文章来自网友投稿 前端开发-JS进阶    已推送百度
var getName = function () { alert (4);};
function getName() { alert (5);}

//输出结果:
getName(); 输出4 

1. `函数声明`提升优先于`变量提升`
2. 函数表达式会将变量提升,但是代码在执行的时候才会被赋值
3. 拆分为
function getName() { alert (5);}//函数声明提升
var getName; //变量声明提升
getName = function () { alert (4);};
//输出结果:
getName(); 输出4 //从上往下执行,由于下方也有getName名使其函数覆盖,所以输出的是4
4.注意事项虽然函数在函数表达式后面,但是由于声明提升会使`同函数名`函数表达式覆盖普通函数!
评论列表