두 자바스크립트 객체 property를 동적으로 merge시키는법
조회수 2330회
var obj1 = { food: 'pizza', car: 'ford' }
var obj2 = { animal: 'dog' }
obj1.merge(obj2);
//obj1은 이제 3개의 property를 가진다 : food, car, and animal
위의 예제처럼 두 객체 프라퍼티를 동적으로 머지시키고 싶은데요. 어떻게 하면 좋을지 모르겠습니다. 가장 간단한 방법을 알려주세요.
1 답변
-
for (var attrname in obj2) { obj1[attrname] = obj2[attrname]; }
간단하게 이렇게하시면 obj1에 obj2의 property가 들어가게됩니다. obj1이 수정되길 원하지 않으신다면function merge_options(obj1,obj2){ var obj3 = {}; for (var attrname in obj1) { obj3[attrname] = obj1[attrname]; } for (var attrname in obj2) { obj3[attrname] = obj2[attrname]; } return obj3; }
이런식으로 할수도있습니다.
댓글 입력