作用域 变量值受到影响

发布于 2022-09-05 05:29:32 字数 104 浏览 19 评论 0

var a = b = 10;

(function(){

var a=b=20

})();

console.log(b); // 20

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

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

发布评论

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

评论(2

以为你会在 2022-09-12 05:29:32

你写的var a = b = 20;并不等于 var a =20;var b = 20 ; 这个b是全局变量 覆盖了闭包外的b

不语却知心 2022-09-12 05:29:32

这不是闭包, 就是一个函数作用域和全局作用域.

还有, 你知道 var a=b=20这个吗? 这并不是定义两个局部变量, 而是一个赋值给b, 一个定义变量a. 所以赋值更改的是全局变量的值, 定义局部变量为a与全局的a没有关系.

定义多个变量的语法是 var a, b 中间要有 逗号.

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