块级作用域绑定
块级作用域,说白了就是达到跟正常编程语言一样的效果,修正现有 JS 中一些令人困惑的特性,包括:
- 没有块级作用域。这意味着,块中声明的变量会被直接提升到上一级的函数或全局作用域中,循环中的变量也会被提升到全局
- 在全局作用域(非函数作用域)中声明的变量会直接挂载到全局对象上(
window
/global
) - 会有经典的循环问题,贡献了许多面试题
而 ES6 中新出的 const
/ let
声明就解决了这些问题。所以,最佳实践是:
- 不需要改变值的变量,一律用
const
声明 - 需要改变值的变量,一律用
let
声明 - 除非你在没有
const
/let
的环境下工作(如兼容老版浏览器、写 babel 这种工具等),否则完全弃用var
声明;
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
上一篇: JavaScript 生成器之精髓
下一篇: 扩展对象的功能性
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论