我有一个对象var obj = {id: value}
在我的 html 中,我想显示 id 和值。
我正在使用 AngularJS。
请:我不想要 ng-repeat 的解决方案,因为我在这个对象中只得到一个元素
谢谢
最佳答案
在现代浏览器上,您可以通过Object.keys
获取对象“自己的”属性名称(而不是来自其原型(prototype)的属性名称)的列表。如果对象只有一个属性,您将只返回一个名称:
var name = Object.keys(obj)[0]; // [0] = get the first (only)
在较旧的浏览器上,您可以通过 for-in
循环:(或者,您可以为 Object.keys
获取“shim”或“polyfill”,其中会在幕后使用一个)
var name, n;
for (n in obj) {
if (obj.hasOwnProperty(n)) {
name = n;
break;
}
}
一旦知道名称,就可以使用它来获取值:
var value = obj[name];
<小时/>
旁注:通常最好设计对象,使属性名称一致,而值不同。例如,不是 {id: value}
,其中 id
和 value
都是可变的,也许是 {id: "the ID ", value: "值"}
其中属性名称一致但值不同。那么你可以只使用 obj.id
和 obj.value
。
关于javascript - 当我不知道属性名称时,如何从 javascript 对象获取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27176292/