首页IT科技js变量提升好处和问题(js专项之变量提升和函数提升题目)

js变量提升好处和问题(js专项之变量提升和函数提升题目)

时间2025-04-30 21:12:23分类IT科技浏览3334
导读:变量提升题目:...

变量提升题目:

答案如下(还请先思考哦)

//编译后 (function(){ var a; a=5; console.log(window.a) //undefined a=10; console.log(a) //10 })()

函数提升题目:

function test(){ console.log(1,foo); console.log(2,bar); var foo=hello console.log(3,foo); var bar =function(){ return world } function foo(){ return hello } } test()

答案如下:

//编译后 //函数提升优先级大于变量提升 function test(){ function foo(){ return hello } var foo; var bar; console.log(1,foo); //foo(){ } console.log(2,bar); //undefined foo=hello console.log(3,foo); //hello bar =function(){ return world } } test()

总结:

1.对于用var声明的变量        ,声明会提升到其所在作用域的顶端                 ,但赋值操作不会提升            。

2.函数声明同样也会提升      ,这里仅限于函数声明      ,并不包含函数表达式              。

3.如果变量名和函数名一样的话                ,函数提升优先级高于变量提升     。

4.如果存在两个函数声明         ,则先出现的声明先提升    ,后出现的声明后提升               ,函数名相同的时候            ,后提升的会覆盖先提升的         。

声明:本站所有文章  ,如无特殊说明或标注              ,均为本站原创发布               。任何个人或组织               ,在未征得本站同意时,禁止复制        、盗用                 、采集      、发布本站内容到任何网站      、书籍等各类媒体平台       。如若本站内容侵犯了原著者的合法权益           ,可联系我们进行处理      。

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
threejs课程(记录–Three.js入门教程——教不会算我输) mac os big sur11.4(苹果发布macOS Big Sur 11.0.1 RC 2版本)