gpt4 book ai didi

javascript - 使用 'var' 声明变量是可选的吗?

转载 作者:IT老高 更新时间:2023-10-28 11:03:56 29 4
gpt4 key购买 nike

“var”是可选的吗?

myObj = 1;

同?

var myObj = 1;

我发现它们在我的测试中都有效,我假设 var 是可选的。对吗?

最佳答案

它们的含义不同。如果你使用 var 变量是在你所在的范围内声明的(例如函数)。如果您不使用 var,变量会在作用域层中冒泡,直到遇到具有给定名称或全局对象的变量(窗口,如果您在浏览器中执行此操作),然后附着在哪里。它与全局变量非常相似。但是,它仍然可以使用 delete 删除(很可能是由也未能使用 var 的其他人的代码)。如果在全局范围内使用var,则该变量是真正的全局,不能被删除。

在我看来,这是 javascript 最危险的问题之一,应该弃用,或者至少在警告之上发出警告。原因是,很容易忘记 var 并且意外地将公共(public)变量名绑定(bind)到全局对象。这会产生奇怪且难以调试的行为。

关于javascript - 使用 'var' 声明变量是可选的吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2485423/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com