Javascript 在对象中保存动态数据?

Javascript 在对象中保存动态数据?,javascript,object,row,Javascript,Object,Row,我有一个简单的时间输入表,请参见: 我希望在用户添加、修改和删除行时动态存储时间数据,我认为对象是最好的方法 我的问题是什么是最佳实践?我应该创建一个构造函数吗 function TimesheetRecord(id, TSDate, TSStaffId, Hours, Comments, TSTaskId, Billable) { this.id = id; this.TSDate = TSDate; this.TSStaffId = TSStaffId; th

我有一个简单的时间输入表,请参见:

我希望在用户添加、修改和删除行时动态存储时间数据,我认为对象是最好的方法

我的问题是什么是最佳实践?我应该创建一个构造函数吗

function TimesheetRecord(id, TSDate, TSStaffId, Hours, Comments, TSTaskId, Billable) {
    this.id = id;
    this.TSDate = TSDate;
    this.TSStaffId = TSStaffId;
    this.Hours = Hours;
    this.Comments = Comments;
    this.TSTaskId = TSTaskId;
    this.Billable = Billable;
}

然后每次用户添加一行时动态创建一个新对象?如果我这样做,我怎么知道有多少对象?

在这里,您可以创建一个阵列来存储所有的时间表记录,并在创建新的动态对象时推送一个新的动态对象

// When app starts (dataFromDB is data fetched from db if any)
const TimesheetRecords = dataFromDB || []

// create a new record(mainly in a function)
const TimesheetRecord = {
   id: id,
   TSDate: TSDate,
   TSStaffId: TSStaffId,
   Hours: Hours,
   Comments: Comments,
   TSTaskId: TSTaskId,
   Billable: Billable
}

// store to db (ajax) and then push to array
TimesheetRecords.push(TimesheetRecord)

// Check how many records are there
const count = TimesheetRecords.length

这是在JavaScript中存储没有任何行为(方法)的简单对象的常见模式。

创建简单对象的
{'key':value}
表示法也会简单快捷。使用
集合
数组
存储对象,然后计算其中的元素。是否将它们放入数组?