我想创建将从#32开始循环的对象或数组。我尝试过这样的事情:
var test = [{'recID':"32",'optionalCol':"first",'recID':"33",'optionalCol':"last",'recID':"34",'optionalCol':"age"}];
这对我不起作用,我试着这样循环:
for(var i=32; i < test.lenght; i++) {
console.log(test[i].recID);
}
我想知道这是否可行以及如何构建我的对象/数组以便能够从32开始我的循环?如果有人可以提供帮助,请告诉我。
答案 0 :(得分:2)
你想要做的是使用这样的关联数组:
var test = {
32: "first",
33: "last",
34: "age"
}
您可以像这样迭代对象:
for (t in test) {
console.log(test[t])
}
或者只是像这样快速访问某个项目:
console.log(test[33])
查看jsfiddle:https://jsfiddle.net/xo0vuejt/
答案 1 :(得分:1)
您可以使用带有数字作为键的对象和内部对象,这反映了给定示例中的值。
var test = {
32: {
'recID': "32",
'optionalCol': "first"
},
33: {
'recID': "33",
'optionalCol': "last"
},
34: {
'recID': "34",
'optionalCol': "age"
}
};
此结构允许使用
访问属性test[33].optionalCol
使用
进行迭代Object.keys(test).forEach(function (key, i, keys) {
// test[k] ...
});
对象属性的计数
Object.keys(test).length // 3