gpt4 book ai didi

javascript - 为什么在声明子 namespace 时不能使用 var?

转载 作者:行者123 更新时间:2023-11-30 18:03:40 24 4
gpt4 key购买 nike

为什么下面的工作有效

var NameSpace = NameSpace || {}; 
NameSpace.Foo = 2;

但这不是吗?

var NameSpace = NameSpace || {}; 
var NameSpace.Foo = 2;

如能深入了解变量减速在命名空间方面的内部工作原理,我们将不胜感激。

最佳答案

JavaScript 没有 namespace 。您的第一行代码声明了一个名称为 Namespace 且值为对象的变量:

var NameSpace = NameSpace || {};

然后您在该对象上创建一个属性 Foo,并为其赋值:

NameSpace.Foo = 2;

底线:变量和对象属性是不同的东西(除其他区别外,变量有范围,而属性没有)。 var statement仅用于声明变量。

关于javascript - 为什么在声明子 namespace 时不能使用 var?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16304429/

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