这是here的继续。
如果我有一个对象:
var myObj = [
{ 'name,number,level': 'Mike,b1,0' },
{ 'name,number,level': 'Rik',b2,0' },
{ 'name,number,level': 'Tom',b3,0'},
....
}
];
我该如何使用:
myObj.name
myObj.number
myObj.level
例如myObj.name
应该提供所有名称,或者
myObj.name[0]
会给我一个名字。
答案 0 :(得分:2)
我希望将此答案更具体地说明给定的示例,如果需要,您可以将其与here给出的答案相结合进行扩展。请注意,此方法仅适用于IE 9及更高版本,并且应该适用于所有其他当前浏览器。
var myObj = [
{ 'name,number,level': 'Mike,b1,0' },
{ 'name,number,level': 'Rik,b2,0' },
{ 'name,number,level': 'Tom,b3,0' }
];
myObj = myObj.reduce(function(newObj, currentItem) {
var values = currentItem['name,number,level'].split(',');
newObj.name.push(values[0]);
newObj.number.push(values[1]);
newObj.level.push(values[2]);
return newObj;
},
{
name: [],
number: [],
level: []
});
console.log('names:', myObj.name)
console.log('first name:', myObj.name[0]);
console.log('numbers:', myObj.number)
console.log('first number:', myObj.number[0]);
console.log('levels:', myObj.level)
console.log('first level:', myObj.level[0]);

答案 1 :(得分:1)
您不应该以这种方式构建对象。您甚至不应将其称为对象,它是对象列表,其中每个对象都由名称,数字和级别。
hibernate {
naming_strategy = org.hibernate.cfg.ImprovedNamingStrategy
}
答案 2 :(得分:0)
你犯了一个错误,正确的做法就是这样:
选项1:
var myObj =
[
{
'name': 'Mike',
'number': 'b1',
'level': '0'
},
{
'name': 'Rik',
'number': 'b2',
'level': '0'
}
];
您可以访问以下值:
myObj[0].name
myObj[0].number
myObj[0].level
选项2:
或者你可以这样做:
var myObj =
{
'name': ['Mike', 'Rik'],
'number': ['b1', 'b2'],
'level': ['0', '0']
};
您可以访问以下值:
myObj.name[0]
myObj.number[0]
myObj.level[0]
您可以选择选项1 或选项2 ,具体取决于您要排列数据的方式。