我有一个带有一些对象的数组:
var myArray = [{name: "Elliot", type: "person"},{name: "ET", type: "ufo"},{name: "Mary", type: "person"},{name: "AEI", type: "ufo"}]
我想要每个这个并设置X时间的其他类型,这个时间是在其他变量中设置的。
var type1 = 2;
var type2 = 1;
var type3 = 3;
我尝试:
for( i = 0; i < type1 ; i ++){ myArray.set({type:'no-et'})}
for( i = 0; i < type2 ; i ++){ myArray.set({type:'is-no-et'})}
for( i = 0; i < type3 ; i ++){ myArray.set({type:'is-no-et-4'})}
但是只能在第一次工作,而不是其他人,因为我每次都是同一个数组,但不知道每个数组和设置类型只是X次,然后再次设置X次,而不会丢失之前所做的事情。
任何帮助?
由于
答案 0 :(得分:2)
尝试以另一种方式解决问题,迭代数组并检查您设置类型的索引。
var people = [
{ name: "Elliot", type: "person" },
{ name: "ET", type: "ufo" },
{ name: "Mary", type: "person" },
{ name: "AEI", type: "ufo" }
];
for (var i = 0; i < people.length; i++) {
if (i < 2) {
people[i].type = "no-et";
}
if (i === 2) {
people[i].type = "is-no-et";
}
if (i > 2) {
people[i].type = "is-no-et-4";
}
document.write("Name: " + people[i].name + ", Type: " + people[i].type + "<br>");
}
&#13;