使用for循环,如何迭代对象以向其添加id属性?

时间:2015-01-23 14:43:33

标签: javascript

在generate函数中,我需要通过boxes数组循环Box构造函数,并为每个创建的新框添加一个唯一的id。

我需要使用计数器变量将方框数增加1.每个方框的id必须是从1开始的数字。

它只需要是基本的JavaScript。

function Box(id, name, color, x, y) {
  this.id = id;
  this.name = name;
  this.color = color;
  this.x = x;
  this.y = y;
}

var boxes = [];


var counter = 0;

function generate() {
  for (i = 0; i < boxes.length; i++) {
    boxes[i] = new Box();
    newBox[i].setAttribute("id", "boxes");
    counter++;
  };
}

1 个答案:

答案 0 :(得分:1)

您必须使用new为数组中的每个Box创建一个实例。

我建议您也将所需的长度传递到generate函数:

function generateBoxes(n) {
    var boxes = [];
    for (var i = 0; i < n; ++i) {
        boxes[i] = new Box(i, ...);  // supply additional parameters
        // etc
    }
    return boxes;
}