2017-05-09 5 views
0

나는 간단한 시간 입력 양식이 여기를 참조 : 사용자가 추가, 수정 및 행을 삭제하고 오브젝트를 생각하고하는 것이 가장 좋은 방법이기 때문에 https://codepen.io/dikuw/pen/rmpozm동적 데이터를 객체에 저장 하시겠습니까?

내가 동적 시간 데이터를 저장하고자합니다.

제 질문은 무엇이 최선입니까? 생성자를 생성해야합니까? 예 :

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; 
} 

그런 다음 사용자가 행을 추가 할 때마다 동적으로 새 객체를 만드시겠습니까? 내가 그렇게한다면 얼마나 많은 물체가 있는지 어떻게 알 수 있을까요?

+1

'{ 'key': value}'표기법을 사용하면 표기법이 훨씬 쉽고 빠릅니다. –

+1

'set' 또는'array'를 사용하여 객체를 저장 한 다음 내부의 요소를 계산합니다. – Slime

+1

배열에 넣으시겠습니까? –

답변

1

여기에서 모든 TimesheetRecords를 저장하고 새 동적 개체를 만들 때 배열을 만들 수 있습니다.

// 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에서 동작 (메서드)없이 간단한 개체를 저장하기위한 일반적인 패턴입니다.