1. Object.assign() - 객체를 병합하는 메서드
Object.assign(target, ...sources)
해당 메서드는 하나 이상의 원본 객체들로부터 모든 속성들을 대상 객체로 복사합니다.
첫번째 인자는 타겟으로, 그 뒤 인자부터는 타겟오브젝트에 병합될 객체입니다.
1
2
3
4
5
6
7
|
let obj1 = { a: 1 };
let obj2 = { b: 2 };
let obj3 = { c: 3 };
var newObj = Object.assign(obj1, obj2, obj3);
console.log(obj1); // --> { a: 1, b: 2, c: 3 }
console.log(newObj); // --> { a: 1, b: 2, c: 3 }
|
cs |
위 예제에서는 obj1값 자체가 변경이되어, obj1과 newObj가 같아졌습니다. 그래서 항상 값을 보존하면서, 새로운 객체를 반환해야한다면, 항상 아래와 같이 첫번째 인자로 빈 객체를 줘야합니다.
1
2
3
4
5
6
7
|
let obj1 = { a: 1 };
let obj2 = { b: 2 };
let obj3 = { c: 3 };
var newObj = Object.assign({}, obj1, obj2, obj3);
console.log(obj1); // --> { a: 1 }
console.log(newObj); // --> { a: 1, b: 2, c: 3 }
|
cs |
2. Object.keys(), Object.values(), Object.entries() - 키, 값, 키-값 배열을 반환
Object.keys(obj), Object.values(obj), Object.entries(obj)
1
2
3
4
5
6
7
8
9
|
let score = {
science: 80,
math: 90,
coding: 100
}
console.log(Object.keys(score)); //--> ["science", "math", "coding"]
console.log(Object.values(score)); //--> [80, 90, 100]
console.log(Object.entries(score));//--> [["science", 80], ["math", 90], ["coding", 100]]
|
cs |
3. Object.prototype.hasOwnProperty() - 객체가 특정 프로퍼티에 대한 소유여부 반환
obj.hasOwnProperty(prop)
1
2
3
4
5
6
7
8
9
10
|
let obj = {
a: "one",
b: "two",
c: "three",
d: "four"
};
obj.hasOwnProperty("a"); // --> true
obj.hasOwnProperty("b"); // --> true
obj.hasOwnProperty("e"); // --> false
|
cs |
'Web[웹] > 자바스크립트' 카테고리의 다른 글
Array 메서드 | #2-2 Immutable (불변성) 메서드 (0) | 2020.06.21 |
---|---|
Array 메서드 | #2-1 Immutable (불변성) 메서드 (0) | 2020.06.21 |
Array 메서드 | #1 원본 배열 자체를 수정하는 메서드 (0) | 2020.06.21 |
문자열(String) 주요 메서드 파악하기 (0) | 2020.06.20 |
배열과 객체의 개념과 차이 (Array vs Object) (0) | 2020.06.17 |