我对Java语言还很陌生,并且有一个关于公式化变量名的小查询:

function createObjects(int length) {
  var count;
  for(count=0; count<length; count++;) {
    var personObj + "" + count;
  }
}


在这里,我想为for循环的每次迭代制定一个不同的personObj,这是正确的过程吗?这能给我:
var personObj1
var personObj2
等等

谢谢!
马特

最佳答案

如果要具有相同基础数据结构/逻辑的多个实例,则可以使用如下方法:

创建一个constructor function并使用所需的属性(也包括方法)生成一个Object。例如:

function PersonObj(name, age) {
    this.name = name;
    this.age = age;
}


这使您可以使用PersonObj创建var n = new PersonObj('Fred',32);的新实例。现在,您可以使用Array存储这些对象的多个实例:

var persons = []; // creates a new Array

for (var i = 1; i < 13; i++){
    persons.push(new PersonObj('Alfred', i));
}


persons现在将包含十二个1到12岁的Alfreds。

如果您想更改3号阿尔弗雷德(Alfred No.)的年龄,可以这样做:

persons[2].age = 99;


a live demo

关于javascript - 根据循环计数器创建具有唯一名称的javascript对象,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10140033/

10-09 23:20