8、变量提升的处理机制(3)

1、当前阶段浏览器对JS变量提升的处理:

向前兼容ES3/ES5规范:
(1)判断体和函数体等不存在块级上下文,上下文只有 全局和私有。
(2)无论条件是否成立,带function的都要声明+定义。

向后兼容ES6规范:
(1)存在块级作用域,大括号中出现let/const/function......都会被认为是块级作用域。
(2)无论条件是否成立,带function的只提前声明,不会提前赋值了。

浏览器兼容.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
禁止转载,如需转载请通过简信或评论联系作者。

推荐阅读更多精彩内容