自动创建对象实例

时间:2019-03-28 14:48:47

标签: javascript html

我有一个充当计数器的变量。我试图使用计数器(称为itemnumber)创建类的新实例,并在实例名称中包含变量值,而无需手动键入代码以创建类的新实例。

我还需要一个函数来显示从该类创建的所有实例

我的目标是运行此函数,该函数每次单击按钮都会创建一个新实例

let itemnumber = 1;

因此代码将创建一个名为LineItem_1的实例

我的课是

function burgerlineitem (lineItemNumber, burgerTotal) {
    this.lineItemNumber = itemnumber;
    this.burgerTotal = burgerCustomTotal;
    itemnumber++
    }

所以我需要一种自动的方法来创建此代码

var LineItem_1 = new burgerlineitem(itemnumber, burgerCustomTotal)

我的代码是

let itemnumber = 1;

function burgerlineitem (lineItemNumber, burgerTotal) {
    this.lineItemNumber = itemnumber;
    this.burgerTotal = burgerCustomTotal;
    itemnumber++
    }

1 个答案:

答案 0 :(得分:0)

不确定我是否能完全得到您想要的东西,但是您可以执行以下操作。当您单击按钮时,它将把类的每个实例推入数组。

itemnumber = 0;
var lineItems = [];

function burgerlineitem(lineItemNumber, burgerTotal) {
  this.lineItemNumber = lineItemNumber;
  this.burgerTotal = burgerTotal;
  itemnumber++;
}

document.getElementById('add').addEventListener('click', function() {
  lineItems.push(new burgerlineitem(itemnumber, "???"));
  
  //Create report of all items in the console.
  console.log("burgerlineitems report:");
  lineItems.forEach(function(burgerlineitem) {
    console.log("burgerlineitem: " +  burgerlineitem.lineItemNumber);
  });
  console.log("-----------");
});
<button id="add">Create burgerline</button>