我想知道是否可能(并且正确)构造与其他数组关联的命名索引数组。
,例如,
var signOptionSet = [];
signOptionSet['basic'] = ['Sign Width', 'Sign Height', 'Sign Depth', 'Base Material', 'Finish'];
signOptionSet['advanced'] = ['Area', 'Perimeter', 'Lighting'];
我如何在signOptionSet ['basic']中访问类似'Sign Height'的内容?
答案 0 :(得分:3)
我想知道它是否可能......
是的,虽然你使用它的方式,你不会想要一个数组,你只需要一个对象({}
)(见下文)。
...(并且正确)......
有些人认为使用数组然后向其添加非索引属性是不正确的。如果你明白某些事情(例如JSON.stringify
)不会看到那些非索引属性,那么在技术上没有任何错误。
我如何访问类似' Sign Height'在signOptionSet [' basic']?
它是您已分配给signOptionSet['basic']
的数组的第二个条目,因此索引1,所以:
var x = signOptionSet['basic'][1];
或
var x = signOptionSet.basic[1];
使用一个对象,并使用属性名称文字,因为这里不需要字符串,如下所示:
var signOptionSet = {
basic: ['Sign Width', 'Sign Height', 'Sign Depth', 'Base Material', 'Finish'],
advanced: ['Area', 'Perimeter', 'Lighting']
};
你可以使用字符串,如果您愿意:
var signOptionSet = {
"basic": ['Sign Width', 'Sign Height', 'Sign Depth', 'Base Material', 'Finish'],
"advanced": ['Area', 'Perimeter', 'Lighting']
};
单引号和双引号在JavaScript中都有效(单引号不是JSON,但这不是JSON,它的JavaScript):
var signOptionSet = {
'basic': ['Sign Width', 'Sign Height', 'Sign Depth', 'Base Material', 'Finish'],
'advanced': ['Area', 'Perimeter', 'Lighting']
};
答案 1 :(得分:0)