【问题标题】:How do I have a Javascript Array of a custom object which dynamically grows?如何拥有动态增长的自定义对象的 Javascript 数组?
【发布时间】:2015-04-30 03:36:30
【问题描述】:

我正在使用 HTML5 创建一个房间预订表单。用户输入诸如日期、他们的姓名、他们正在预订的房间等信息……然后我想将此信息插入到我自己创建的对象的数组中。因此,每次用户按下按钮时,它都会获取所有表单数据并将其插入到数组中。

数组将被限制为 15 或 20...

我已经设法在下面创建了一个单一对象,但我正在努力创建这个对象的数组......然后我需要弄清楚如何识别数组中的哪些索引是空的......

function listItem(cal, lesson, date, notes, teacher, group){
  this.calChoice = cal;
  this.lessonChoice = lesson;
  this.date = date;
  this.notes = notes;
  this.teacher = teacher;
  this.group = group;
}

// ....

var list = new listItem(calchoice, lessonchoice, date, notes, teacher, group);

我敢肯定这是非常简单的事情:S

谢谢:)

【问题讨论】:

    标签: javascript arrays object multidimensional-array


    【解决方案1】:

    快速拍摄:

    var list = [];
    list[list.length] = new listItem();
    

    因为list.length 是数组中的元素计数。索引从0 开始,因此 list.length 是下一个“空闲”索引。

    【讨论】:

    • 也可以使用list.push(new listItem())
    【解决方案2】:

    .push 将是 imo 的适当方式

    list.push(new listItem(calchoice, lessonchoice, date, notes, teacher, group));
    

    【讨论】:

      【解决方案3】:

      声明一个列表。

      var mainList =[];
      

      每当你创建一个对象时,

      var list = new listItem(calchoice, lessonchoice, date, notes, teacher, group);
      

      将其推送到主列表。

      mainList.push(list);
      

      希望有所帮助!

      如果需要,您可以通过 for 循环访问每个对象。

      【讨论】:

        猜你喜欢
        • 2021-09-06
        • 2023-01-12
        • 2012-06-20
        • 1970-01-01
        • 2010-09-21
        • 2015-06-03
        • 1970-01-01
        • 2019-07-19
        • 2021-07-29
        相关资源
        最近更新 更多