我有以下三个类型的对象组成的对象:
我希望从该对象和其他对象中获取文本samsung
。我尝试过使用for循环,但我得到了密钥0, 1 , 2
。
for(brand in brands){
console.log(brand) // prints out `0, 1 , 2`
}
所以我在循环中添加了另一个嵌套,但是我得到的是0, 0, 0
三星内的键,以及其他对象中的其他数组对象。
我缺少什么?
答案 0 :(得分:1)
您可以使用Object.keys(brands[brand])
,根据您的示例,您需要Object.keys(brands[brand])[0]
答案 1 :(得分:1)
你的循环遍历整个数组,而不是对象的键。
var brand = brands[0];
for ( var i in brand )
console.log( brand[i] ) // -> samsung
或者全部搞定:
for ( var i = 0; i < brands.length; i++){
var brand = brands[i];
for ( var i in brand )
console.log( brand[i] ) // -> samsung
}
答案 2 :(得分:1)
你可以尝试
for(brand in brands[0]){
console.log(brand);
}
假设数组的名称为品牌
修改强>
对于阵列品牌中的所有元素
brands.forEach(function(v){
for(brand in v){
console.log(brand);
}
});