반응형
참고(검색: object mdn)
https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Object
Object.assign(): 대상 객체로 속성을 복사
원본이 바뀌는 문법: const target = Object.assign(A, B)
원본이 유지되는 문법: const target = Object.assign({}, A, B)
// Object 예제
const userAge = {
// Key: value
name: 'happy',
age: 48
}
const userEmail = {
name: 'happy',
email: 'happy@naver.com'
}
// 원본을 유지하는 방법
const target = Object.assign({}, userAge, userEmail)
console.log(target)
console.log(userAge)
// 같은 메모리를 바라보기 때문에 true 반환
console.log(target === userAge)
// 정적메소드: 복사 기능
const target2 = Object.assign(userAge, userEmail)
console.log(target2)
console.log(userAge)
// 같은 메모리를 바라보기 때문에 true 반환
console.log(target2 === userAge)
const a = { k: 123}
const b = { k: 123}
// 메모리 주소가 다르기 때문에 false 반환
console.log(a === b)
Object.keys(): 지정된 객체의 고유 한 열거 가능한 속성 이름 배열을 반환 하며 일반 루프와 동일한 순서로 반복
const user = {
name: 'happy',
age: 90,
email: 'happy@navver.com'
}
const keys = Object.keys(user)
console.log(keys)
// ['name', 'age', 'email']
// 인덱싱 방식
console.log(user['email'])
// key라는 매개변수이름은 변경할 수 있음
// key에 해당하는 값들만 추출해서 배열데이터로 만들수있음
const values = keys.map(key => user[key])
console.log(values)
반응형
'프론트엔드 > JavaScript' 카테고리의 다른 글
JS 데이터 - 전개 연산자 (Spread) (0) | 2021.05.31 |
---|---|
JS 데이터 - 구조 분해 할당 (0) | 2021.05.31 |
JS데이터 - 배열 2 (0) | 2021.05.29 |
JS 데이터 - 배열 (0) | 2021.05.29 |
JS 데이터 - 숫자(수학) (0) | 2021.05.29 |