home
자바
home
🙋🏽‍♂️

객체 메소드(Object methods), 계산된 프로퍼티(Computed property)

강의명
자바스크립트 중급 강좌
강의순서
3
과목
⚽자바스크립트
수강상태
완료

계산된 프로퍼티 (Computed property)

let a = 'age'; const user = { name: 'jjw', age: 20 };
JavaScript
복사
여기서, age라는 키 대신
const user = { name: 'jjw', [a]: 20 };
JavaScript
복사
이렇게 사용할 수 있다.
const user = { [1 + 4]: 5, ["안녕"+"하세요"]: "Hello" };
JavaScript
복사
이렇게 식 자체를 넣는 것도 가능하다.

객체 메소드(Object methods)

Object.assign() : 객체 복제

const user = { name: 'jjw', age: 20 }; // (X) 객체가 복사되는 것이 아니라 참조값만 복사된다. const cloneUser = user; cloneUser.name = 'Tom'; // clonseUser의 이름을 바꿨는데 user의 이름도 바뀐다. // (O} 객체 복제, 첫번 째 인자는 초기값 const newUser = Object.assign({}, user); // == { } + {name: 'jjw', age: 20} // newUser의 이름을 바꿔도 user는 변함이 없다. newUser.name = 'Tom'; console.log(user.name); // 'jjw' - ( cloneUser로 안바꿨을 경우)
JavaScript
복사
병합할 때 키가 같다면 덮어쓰게 된다.
Tom을 jjw가 덮어썼다.
두 개 이상의 객체도 합칠 수 있다.
const user = { name: 'jjw' }; const info1 = { age: 20 }; const info2 = { gender: 'male' }; Object.assign(user, info1, info2);
JavaScript
복사

Object.keys() : 키 배열 반환

const user = { name: 'jjw', age: 20, gender: 'male' }; Object.keys(user); // ["name", "age", "gender"]
JavaScript
복사

Object.values() : 값 배열 반환 (<--> Object.keys)

const user = { name: 'jjw', age: 20, gender: 'male' }; Object.values(user); // ["jjw", 20, "male"]
JavaScript
복사

Object.entries() : 키/값 배열 반환

const user = { name: 'jjw', age: 20, gender: 'male' }; Object.entries(user); // [ ["name", "jjw"], ["age", 20], ["gender", "male"] ]
JavaScript
복사

Object.fromEntries() : 키/값 배열을 객체로 (<--> Object.entries)

const arr = [ ["name", "jjw"], ["age", 20], ["gender", "male"] ]; Object.fromEntries(arr); // {name: 'jjw', age: 20, gender: 'male'}
JavaScript
복사