2016-10-23 2 views
0

나는 객체개체에 새 속성을 추가하는 방법은 무엇입니까?

let data = { 
        "data 1": { 
         "row1": "aaaa", 

        }, 
        "data 2": { 
         "row3": "nnnnn", 

        } 
       } 

을 그리고 나는 그런 객체 얻기 위해 동적 이름과 발스 몇 가지 속성을 추가 할 : 나는이 코드를 시도

let data = { 
        "data 1": { 
         "row1": "aaaa", 
         "row2": "bbbb", 
        }, 
        "data 2": { 
         "row3": "nnnnn", 
         "row4": "sssss", 
         "row11": "bbb", 
         "eeee": "ffff" 
        }, 
        "dynamic1": { 
         "dyn_2": "dyn_val_1", 
         "dyn_3": "dyn_val_2" 
        } 
       } 

을하지만, 데이터 OBJ를 덮어 추가 대신 마지막 값 사용

 responseJson.results.forEach(function (value) { 

       data[value.date] = { [value.event_id] : [value.name] }; 

      }) 
+0

가'responseJson'뿐만 아니라 추가하시기 바랍니다. –

+0

responseJson.results입니까? 또는 배열? –

+0

@FelixKling 아니요, 새 개체 "dynamic1"을 추가하고 싶습니다. { "dyn_2": "dyn_val_1", "dyn_3": "dyn_val_2" } – SERG

답변

3

글쎄, 속성을 덮어 쓰지 마십시오. 대신 객체에 추가

responseJson.results.forEach(function (value) { 
    if (!data[value.date) { 
    data[value.date] = {}; 
    } 
    data[value.date][value.event_id] = value.name; 
}); 

관련 : How can I add a key/value pair to a JavaScript object?

+0

감사합니다. 그게 내가 필요한거야. – SERG

관련 문제