객체 메소드
1. Object.assign()
객체 복제
user를 복사하고 싶다고 그냥 cloneUser에 대입해서 될까?
const user = {
name : 'susukkang',
age : 30
}
const cloneUser = user;
답은 '아니다'
user 변수에는 객체 자체가 들어가 있는 것이 아니라, 객체가 저장되어 있는 메모리 주소인 객체에 의한 참조값이 저장된다.
그러므로 cloneUser에는 데이터가 들어가지않고 참조값이 들어간다.
Object.assign() 사용
const newUser = Object.assign({}, user);
이렇게 사용해야 newUser에 user의 값들이 복제된다.
병합1
const newUser2 = Object.assign({gender:'female'}, user)
user 객체에 gender: 'female' 프로퍼티가 추가된 newUser2가 생성된다.
병합2
const user = {
name : 'susukkang'
}
const info1 = {
age : 27
}
const info2 = {
gender : 'female'
}
const data = Object.assign(user, info1, info2)
세가지 객체를 모두 합친 data 객체를 생성할 수 있다.
2. Object.keys()
키 배열 반환
const user = {
name : 'susukkang',
age : 27,
gender : 'female'
}
Object.keys(user)
키들을 배열로 만들어 반환한다.
// ["name", "age", "gender"]
3. Object.values()
값 배열 반환
const user = {
name : 'susukkang',
age : 27,
gender : 'female'
}
Object.values(user)
값들을 배열로 만들어 반환한다.
// ["Mike", 27, "female"]
4. Object.entries()
const user = {
name : 'susukkang',
age : 27,
gender : 'female'
}
Object.entries(user)
키와 값을 쌍으로 묶어 배열로 반환한다.
[
["name", "susukkang"],
["age", 30],
["gender", "female"]
]
5. Object.fromEntries()
const arr =
[
["name", "susukkang"],
["age", 30],
["gender", "female"]
]
키/값 배열을 객체로 만들어준다.
{
name: 'susukkang',
age: 27,
gender: 'female'
}
'WEB > JavaScript' 카테고리의 다른 글
[JavaScript] 기능 모듈화 시키기 (0) | 2023.10.16 |
---|---|
[JavaScript] 화살표 함수, Arrow Function (0) | 2023.10.13 |
[JavaScript] 생성자 함수 (0) | 2023.10.13 |
[JavaScript] 스크롤 이벤트 : 배경색, 글씨색 변경 (0) | 2023.10.12 |
[JavaScript] tansition 조작 : 배경 이미지 조작 (0) | 2023.10.12 |