[{name: "apple", color:["green", "red"]}, {name: "banana", color:["yellow"]}]
。 使用for循环?是否可以访问所有颜色阵列中的所有颜色?
代码,我试图: for (i = 0; i < color.length; i++) { return color.length; }
[{name: "apple", color:["green", "red"]}, {name: "banana", color:["yellow"]}]
。 使用for循环?是否可以访问所有颜色阵列中的所有颜色?
代码,我试图: for (i = 0; i < color.length; i++) { return color.length; }
可以使用映射函数为对象的数组,然后一个for循环为每个对象的内部属性的“颜色”。
var fruits = [{
name: "apple",
color: ["green", "red"]
}, {
name: "banana",
color: ["yellow"]
}];
var colors = [];
fruits.map(function(fruit) {
for (var i = 0; i < fruit.color.length; i++) {
colors.push(fruit.color[i]);
}
});
您可以通过对象数组中使用for
循环来循环,然后串联每个对象的颜色为彩色阵列:
var colorArr = [];
var arr = [{name: "apple", color:["green", "red"]}, {name: "banana", color:["yellow"]}];
for(var i in arr) {
if(arr[i]['color']){
colorArr = colorArr.concat(arr[i]['color']);
}
}
抬头。这种方法工作 – Ann
这里是一个整洁方式做我认为你想要的:
var all_colors = [{name: "apple", color: ["green", "red"]},
{name: "banana", color: ["yellow"]}].reduce(function(a, b) {
return a.concat(b.color);
}, []);
// Note: this line uses ES6
var colors = Array.from(new Set(all_colors));
输出所有颜色的数组,删除重复:
是你可以使用一个循环来迭代阵列。我会从这里开始阅读:http://eloquentjavascript.net/02_program_structure.html#h_FaGGgUI+MM。 –
这是我试过的,但它不工作:for(i = 0; i
Ann
我越来越没有定义。这是错误。 – Ann