每个数组并设置atributte X次

时间:2017-04-17 14:53:10

标签: javascript arrays lodash

我有一个带有一些对象的数组:

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次,而不会丢失之前所做的事情。

任何帮助?

由于

1 个答案:

答案 0 :(得分:2)

尝试以另一种方式解决问题,迭代数组并检查您设置类型的索引。

&#13;
&#13;
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;
&#13;
&#13;