如果我有一个JS对象:
var foo = { 'bar' : 'baz' }
如果我知道foo有基本的键/值结构,但不知道键的名称,我怎么能得到它?为…在吗?$ . each () ?
如果我有一个JS对象:
var foo = { 'bar' : 'baz' }
如果我知道foo有基本的键/值结构,但不知道键的名称,我怎么能得到它?为…在吗?$ . each () ?
当前回答
给定你的对象:
var foo = { 'bar' : 'baz' }
获取bar,使用:
Object.keys(foo)[0]
要获得baz,请使用:
foo[Object.keys(foo)[0]]
假设只有一个对象
其他回答
美元。每个都是一个库结构,而对于…In是原生js,这应该更好
给你的一句话:
const OBJECT = {
'key1': 'value1',
'key2': 'value2',
'key3': 'value3',
'key4': 'value4'
};
const value = 'value2';
const key = Object.keys(OBJECT)[Object.values(OBJECT).indexOf(value)];
window.console.log(key); // = key2
您可以单独访问每个键,而无需迭代,如下所示:
var obj = { first: 'someVal', second: 'otherVal' };
alert(Object.keys(obj)[0]); // returns first
alert(Object.keys(obj)[1]); // returns second
除了for (var key in foo)我什么都没看到。
这是最简单易行的方法。我们就是这么做的。
Var obj = {'bar': 'baz'} var key = Object.keys(obj)[0]; Var值= obj[key]; Console.log ("key = ", key) // bar Console.log ("value = ", value) // baz .log Object.keys()是javascript方法,在对象上使用时返回一个键数组。
Object.keys(obj) // ['bar']
现在您可以迭代对象,并可以访问如下值-
Object.keys(obj).forEach( function(key) {
console.log(obj[key]) // baz
})