如果我有这样的 JSON 对象:
{
"message": {
"name": { "stringLengthTooShort": "blub" }
}
}
属性的名称(此处)stringLengthTooShort
每次都在变化,
我怎么能简单地用 JS 获取 name
的子属性?
目前我有 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])
编辑:9 年后,所有现代浏览器都支持 es20xx,因此可以安全使用:
const obj = {
"message": {
"name": { "stringLengthTooShort": "blub" }
}
};
console.log(Object.keys(obj.message.name)[0]);
关于JavaScript/JSON : Get unknown property of an object,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5842280/