如何读取JavaScript对象中的属性?
如何读取属性 如果我尝试console.logstats[index][nick'];,我有一个错误:无法读取未定义的属性“nick”。查看stats是一个对象数组还是一个简单对象 如果这只是一个简单的对象,那么您可以直接使用:如何读取JavaScript对象中的属性?,javascript,object,properties,Javascript,Object,Properties,如何读取属性 如果我尝试console.logstats[index][nick'];,我有一个错误:无法读取未定义的属性“nick”。查看stats是一个对象数组还是一个简单对象 如果这只是一个简单的对象,那么您可以直接使用: Object {nick: "Okorok", uniq: "STEAM_0:0:XX", teamkill: 4, damage: 619592, deaths: 1727…} 好的,如果是带有对象的对象,请尝试以下操作: console.log(stats['ni
Object {nick: "Okorok", uniq: "STEAM_0:0:XX", teamkill: 4, damage: 619592, deaths: 1727…}
好的,如果是带有对象的对象,请尝试以下操作:
console.log(stats['nick']);
or
console.log(stats.nick);
这里有一个例子:我想你有一些类似于一组对象的东西,比如:
for ( key in stats)
{
console.log(stats[key].nick);
}
var stats = JSON.parse(xmlhttp.responseText);
for (var index = 0; index<stats.length;index++){
for (var key in stats[index]) {
console.log(stats[index][key]);
}
}
如果是这样,您可以这样做:
stats = [{},{},{},...];
stats = { "stat1": {}, "stat2": {}, "stat3": {}, ...];
然后你可以这样做:
stats = [{},{},{},...];
stats = { "stat1": {}, "stat2": {}, "stat3": {}, ...];
或者它只是一个简单的对象,如:
var stats = JSON.parse(xmlhttp.responseText);
for (var index in stats){
for (var key in stats[index]) {
console.log(stats[index][key]);
}
}
然后,您可以简单地尝试:
stats = {}
因此,如果它是一个类似数组的对象,则必须采用不同的方法,首先可以使用:
或者,如果您不想使用,另一种方法是:
stats = _.toArray(stats);
在我看来,统计数据是一系列的东西。也许不是所有人都有一个叫尼克的领域?或者,可能是数组大小错误。而不是索引哦。我反对你的欢迎。将JSIDLE更正为:如果在stats{console.logstats[key].nick;}中的var键的xmlhttp.status==200{var stats=JSON.parsexmlhttp.responseText;则不更正JSIDLE。这对将来阅读它的人来说只是一种困惑。我刚刚发布了JSFIDLE与问题不同的帖子,然后意识到我必须编辑我的帖子。如果人们想知道正确的答案,他们可以在这里的“答案”下阅读。这个答案的一个问题是,你可以以任何顺序获得输出,而以前的方法,如果它起作用的话,会以数字顺序给出。我不知道你是否关心这个。但是这个返回太多了。它不是一个数组。它是一个对象,但键是数字,就像它是一个基于1的数组一样。
var stats2 = []
for (var key in stats) {
stats2.push(key);
}
stats = stats2;