8

我有一个简单的对象,总是有一个key:value喜欢var obj = {'mykey':'myvalue'}

在没有真正这样做的情况下获得价值的最快方式和优雅方式是什么?

for (key in obj) {
  console.log(obj[key]);
  var value = obj[key];
}

就像我可以通过索引 0 或其他方式访问该值吗?

4

3 回答 3

24
var value = obj[Object.keys(obj)[0]];

Object.keys包含在 javascript 1.8.5 中。请在此处检查兼容性http://kangax.github.io/es5-compat-table/#Object.keys

编辑:

这也仅在 javascript 1.8.5 中定义。

var value = obj[Object.getOwnPropertyNames(obj)[0]];

参考:

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Working_with_Objects?redirectlocale=en-US&redirectslug=JavaScript%2FGuide%2FWorking_with_Objects#Enumerating_all_properties_of_an_object

于 2013-10-02T13:40:05.350 回答
1
function firstProp(obj) {
    for(var key in obj)
        return obj[key]
}
于 2013-10-02T13:46:30.953 回答
0

您可以使用Object.values()

const obj = {
  myKeyA: 'my value A',
  myKeyB: 'my value B',
}

const [valueOfFirstObjectProperty] = Object.values(obj)

console.log('Value:', valueOfFirstObjectProperty) // my value A

于 2021-01-27T22:45:39.933 回答