javascript中变量提升和函数提升的详细说明
1 js中只有两个作用域
答:全球范围
乙:功能范围
在ES6之前,js没有块级作用域。
首先,让我们解释一下什么是没有块级作用域的。
因此,此时可以打印出变量a的值。
2:什么是变量推广?
在我们的js中,代码分两步执行:1。解析2。逐步执行
那么变量提升就意味着变量声明会提升到作用域的顶部,也就是说,无论变量在作用域的哪个位置声明,都会提升到作用域的顶部。
那么上面写的其实就相当于下面写的:
看几个例子:
稍微改变一下上面的例子:
结果会大不相同,
再看一个例子:
3:什么是功能提升?
输出结果是:
请注意,函数声明将把函数的声明和定义提升到作用域的顶部。
如果是:函数表达式这样声明的函数,
示例:
输出结果是:
最后总结:
1:所有声明将被提升到范围的顶部。
2:同一个变量只会声明一次,其他的都会被忽略。
3:函数声明的优先级高于变量声明,函数声明和函数定义一起提升。
版权声明:javascript中变量提升和函数提升的详细说明是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。