这篇文章主要讲解了“js变量有哪些提升”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“js变量有哪些提升”吧!
1、var声明的变量将提升到当前作用域的顶部,而不是全局。只有声明提升,赋值不提升。不使用var声明的变量默认挂在全局对象window下。
2、如果是函数变量提升,相当于var add; add = function...。
实例
// 变量提升到当前作用域顶部 function add(num1, num2) { console.log(sum); // undefined var sum = num1 + num2; return sum; } var result = add(10, 20); //30 console.log(sum); // 只有变量会提升 console.log(typeof(a)); // undefined,a为变量提升 console.log(typeof(b)); // function,b为具名函数,函数整体提升 var a = function() { } function b() { }
由于变量的增加,sum将被提升到函数的第一行varsum;因此,第一个log是undefined。而且外面的sum直到整体作用域都找不到,所以报错没有定义。
感谢各位的阅读,以上就是“js变量有哪些提升”的内容了,经过本文的学习后,相信大家对js变量有哪些提升这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。