如果我们创建一些对象,并用这些对象填充一个数组,那么名称是存储在数组中,还是只存储对象的属性?
我想这可能是微不足道的,但我一直无法找到答案。
var boxA = {color: "red", width: 100};
var boxB = {color: "yellow", width: 200};
var boxC = {color: "blue", width: 300};
boxArray = [boxA, boxB, boxC];
for (var i = 0; i < boxArray.length; i++) {
//****
// What code do we insert here to log
// boxA
// boxB
// boxC
//****
}
当然,添加是一个简单的解决方法
boxA.box = boxA;
等然后打电话
console.log(boxArray[i].box);
但这真的有必要吗?
最佳答案
直接回答你的问题 - 不,你不能做你所问的。我曾多次遇到相同的情况。这就是我所做的。您可以不使用数组,而是将对象添加到对象文字中,并将对象映射到某个唯一键,例如 id。
var boxes = {
boxA: { color: 'red', width: 100 },
boxB: { color: 'blue', width: 200 },
boxC: { color: 'yellow', width: 300 },
};
for (var boxKey in boxes) {
console.log(boxKey);
}
// to use
boxes.boxA; // do something with boxA
关于javascript - 在 javascript 中的命名对象数组中 - 名称可以访问吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30494323/