如果我有一个像这样的 JSON 对象:
{
"message": {
"name": { "stringLengthTooShort": "blub" }
}
}
属性名称(此处)
stringLengthTooShort
每次都在变化,我怎么能简单地用 JS 获取
name
的 child 属性?目前我有
message.name
但我现在怎么能得到它的 child 呢? 最佳答案
如果它始终是 message.name
的第一个属性,您可以执行以下操作:
var keys = [];
for (var l in message.name) {
if (message.name.hasOwnProperty(l)){
keys.push(l);
}
}
//=>first property value should now be in message.name[keys[0]]);
// (its label is keys[0])
编辑 :在这个答案九年后,所有现代浏览器都支持 es20xx,因此可以安全使用:const obj = {
"message": {
"name": { "stringLengthTooShort": "blub" }
}
};
console.log(Object.keys(obj.message.name)[0]);