EnJinnier

[JS] 객체 메소드(Object methods) 본문

웹 개발/JavaScript

[JS] 객체 메소드(Object methods)

공학도진니 2024. 4. 5. 19:23

Object.assign(): 객체 복제

user라는 객체를

const newUser = user;

로 할당해버리면 newUser는 user의 참조값 자체를 복사해버리면서 newUser의 내용을 수정했을때 user의 내용까지 수정되는 경우가 발생해버린다.

이때 newUser에 user객체의 내용만 복사해 넣고 싶으면

const newUser = Object.assign({},user);

 라는 코드를 사용하면 된다.

{}안의 내용에 뒤에 참조한 객체의 내용이 추가된다.

만약 병합시 동일한 키가 존재한다면 복사할 개체값의 내용이 기존의 내용을 덮어쓰게 된다.

두 개 이상의 객체도 합쳐줄 수 있다.

const newUser = Object.assign({},user1,user2);

 

Object.keys() : 키 배열 반환

const user = {
	name : 'Mike',
	age : 30,
    gender : 'male',
}

Object.keys(user); //["name", "age", "gender"]

 

 

Object.values() : 값 배열 반환

const user = {
	name : 'Mike',
	age : 30,
    gender : 'male',
}

Object.values(user); //["Mike", 30, "male"]

 

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

const user = {
	name : 'Mike',
	age : 30,
    gender : 'male',
}

Object.entries(user); 
//[
//  ["name","Mike"],
//  ["age",30],
//  ["gender","male"]
//]

 

 

Object.fromEntries() : 키/값 배열을 객체로 만들어줌

const arr = 
[
  ["name","Mike"],
  ["age",30],
  ["gender","male"]
];

Object.fromEntries(arr); 
//{
//  name : 'Mike',
//  age : 30,
//  gender : 'male',
//}