【发布时间】:2017-08-08 16:02:39
【问题描述】:
我正在使用命名空间进行编程,到目前为止,我只在其中使用了变量和函数。我试图在其中做一个嵌套对象,但它似乎不像我期望的那样工作。这是代码
const myNameSpace = {
someVar: '',
otherVar: '',
someFunc() {
// code here
},
nestedObject: {
param1: '',
param2: '',
param3: ''
}
};
其他变量工作正常,但是当我尝试访问param1时,像这样
myNameSpace.nestedObject.param1
它返回未定义的,而不是像我声明的那样的空字符串。同样只访问myNameSpace.nestedObject 会返回一个空字符串...
这有什么问题,甚至可能是我想要的吗?
【问题讨论】:
-
它工作正常,你确定,你使用的是 ES6 系统吗?
-
@NinaScholz 是的,我正在使用所有其他 ES6 东西没有问题
-
是整个对象不起作用吗?您是否尝试过使用较小的对象并对其进行测试?
-
@NinaScholz 问题是我在访问它之前将nestedObject 整个值重置为一个空字符串,这就是它不起作用的原因。但我仍然不得不问这是否是正确的做法,因为我之前从未在命名空间变量中声明嵌套对象
标签: javascript ecmascript-6 javascript-objects javascript-namespaces