如果我有一个JS对象:
var foo = { 'bar' : 'baz' }
如果我知道foo有基本的键/值结构,但不知道键的名称,我怎么能得到它?为…在吗?$ . each () ?
如果我有一个JS对象:
var foo = { 'bar' : 'baz' }
如果我知道foo有基本的键/值结构,但不知道键的名称,我怎么能得到它?为…在吗?$ . each () ?
当前回答
种() object .keys()方法返回给定对象自身可枚举属性的数组,其顺序与for…In循环(区别在于for-in循环也枚举原型链中的属性)。
var arr1 = Object.keys(obj);
Object.values () object .values()方法返回给定对象自身可枚举属性值的数组,其顺序与for…In循环(区别在于for-in循环也枚举原型链中的属性)。
var arr2 = Object.values(obj);
欲了解更多,请点击这里
其他回答
种() object .keys()方法返回给定对象自身可枚举属性的数组,其顺序与for…In循环(区别在于for-in循环也枚举原型链中的属性)。
var arr1 = Object.keys(obj);
Object.values () object .values()方法返回给定对象自身可枚举属性值的数组,其顺序与for…In循环(区别在于for-in循环也枚举原型链中的属性)。
var arr2 = Object.values(obj);
欲了解更多,请点击这里
除了for (var key in foo)我什么都没看到。
您可以单独访问每个键,而无需迭代,如下所示:
var obj = { first: 'someVal', second: 'otherVal' };
alert(Object.keys(obj)[0]); // returns first
alert(Object.keys(obj)[1]); // returns second
这是最简单易行的方法。我们就是这么做的。
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
})
你可以用for循环在对象内部迭代:
for(var i in foo){
alert(i); // alerts key
alert(foo[i]); //alerts key's value
}
Or
Object.keys(foo)
.forEach(function eachKey(key) {
alert(key); // alerts key
alert(foo[key]); // alerts value
});