01.정적(Static) 메소드
prototype
이 붙어 있지 않은 메서드는 정적 (static
) 메서드다.
- 정적 메서드는
{}.assign();
이거 안됨.
prototype
이 지원되는 메소드는 [].reverse()
이거 됨.
02.Object.assign()
assign()
: 모든 출처 객체가 대상 객체로 복사되어서 대상 객체가 반환 됩니다.
assign(대상 객체, 출처 객체);
const userAge = {
name: 'Heropy'
age: 33
}
const userEmail = {
name: 'Heropy'
email: 'wlsdnjs156@naver.com'
}
const target = Object.assign(userAge, userEmail)
console.log(target)
console.log(userAge)
console.log(target === userAge)
const a = { k: 123 }
const b = { k: 123 }
console.log(a === b)
- 원본에 변화 없이 assign() 메소드 사용법
const userAge = {
name: 'Heropy'
age: 24
}
const userEmail = {
name: 'Heropy'
email: 'wlsdnjs156@naver.com'
}
const target = Object.assign({}, userAge, userEmail)
console.log(target)
console.log(userAge)
console.log(target === userAge)
03.Object.keys()
- 객체 데이터의
property
의 이름(key
)만을 추출하여 배열 데이터로 반환
const user = {
name: 'Heropy'
age: 24,
email: 'wlsdnjs156@naver.com'
}
const keys = Object.keys(user)
console.log(keys)
console.log(user['email'])
const values = keys.map(key => user[key])
console.log(values)