如何使用Javascript将数据附加到对象

如何使用Javascript将数据附加到对象,javascript,javascript-objects,Javascript,Javascript Objects,以下是我如何将数据添加到对象: let trade = [ new RecordStock(elem, recordtime, stockquantity, tradetype, stocksymbol), ] 问题是当我运行此命令时: console.log(trade[0].price); 它似乎从一开始就覆盖了我的对象 我添加我的类代码。如何从对象打印第一个数据 class RecordStock { constructor(price, t

以下是我如何将数据添加到对象:

    let trade = [
       new RecordStock(elem, recordtime, stockquantity, tradetype, stocksymbol),
   ]
问题是当我运行此命令时:

 console.log(trade[0].price);
它似乎从一开始就覆盖了我的对象

我添加我的类代码。如何从对象打印第一个数据

    class RecordStock {

  constructor(price, timestamp, stockquantity, tradetype, stocksymbol) {
    this.price = price;
    this.timestamp = timestamp;
    this.stockquantity = stockquantity;
    this.tradetype = tradetype;
    this.stocksymbol = stocksymbol;
  }
  static recordTrade(){
    console.log(price[0]);
  }
}

我认为您希望将对象推入
trade
数组。您可以通过简单地附加到数组来实现这一点

你可以用这样的东西推动物体

假设您有一个添加
RecordStock
对象的函数。这就是为什么会这样

let trade = [];    

trade.push(new RecordStock(elem, recordtime, stockquantity, tradetype, stocksymbol));

trade.push(new RecordStock(elem, recordtime, stockquantity, tradetype, stocksymbol));

trade.push(new RecordStock(elem, recordtime, stockquantity, tradetype, stocksymbol));

现在,您可以使用此
trade[trade.length-1]
访问您推送的最新RecordStock。交易[0]将始终包含您首先推送的对象。这是常用的数组功能。

问题是,在函数中,我每次都声明de var。我将let trade从函数中删除

覆盖是什么意思?数组中的对象将保持从您初始化数组时的状态。@NanduKalidindi当我执行函数和console.log(trade[0])时,它总是打印不同的对象。示例:输入:price=>100。当我把它保存在一个对象中时,它工作得很好,但是当我想在对象中保存更多的价格时,比如101,我想在打印价格[0]时保存更多的价格将数字保留为100,否保留为101。我不确定我是否完全理解,但您是否在执行函数时尝试将对象添加到交易数组中?是,但我希望推送信息以创建新对象,但不覆盖对象中的数据。该类的名称称为RecordStock。您是否使用
let trade=[]初始化了交易
?不……现在可以了。问题是我正在打印交易[0]这始终是我输入的数据,但是交易。对象[0]我不知道如何打印我已经添加了我的classI更新了一点答案。但我仍然不清楚你想要实现什么。如果这不能解决您的问题,请发布一个工作片段。