关于在Firebug下let的作用域问题

发布于 2022-09-04 10:13:40 字数 313 浏览 19 评论 0

如图所示,刚开始在for循环语句块中使用let声明变量i,跟预期一样,在语句块外面无法获取i的值。然后我把let换成var之后便可以在外面获取到i的值了,到这为止都很正常。然而诡异的事情发生了,再把var换回let时,居然在语句块外面能访问到i的值了!而且i的上一次结果还被保留了!实现了在语句块外面递增!
这是个什么情况?!用的是Firefox 47.0.1
图片描述

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

三生一梦 2022-09-11 10:13:40

var 之后生成了一个全局变量,当然可以取到了,递增的 i 还是上次 var 定义的 i,不是 let 的 i

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文