*Computed property(계산된 프로퍼티)

  let a = 'age';

  const user = {

       name : 'Gangmi',

       [a] : 30      //age: 30     [a] = 변수 a 에 할당된 값 age

    }

  *식 자체를 넣는 것도 가능

  const user = {

        [1 + 4] : 5,

        ["안녕"+"하세요"] : "Hello"

   }

 

*객체 메소드

1)Object.assign(): 객체 복제

 const user = {

       name : 'Mike',

       age : 30

    }

 const newUser = Object.assign({}, user);    {}: 빈 객체= 초기값,  두번째 매개변수부터 들어온 객체들이 초기값에 병합.

 {} + {name : 'Mike', age : 30} = { 

                                                         name : 'Mike',

                                                         age : 30,

                                                   }

 newUser.name = 'Tom';

 console.log(user.name);        //'Mike'

 newUser != user  (같은 객체 아님)

 

Object.assign({name : 'Tom'}, user);

초기값에 같은 키값이 있을 때 기존 값으로 덮어쓰기 됨. → name: 'Mike', age: 30,

 

두 개 이상의 객체 합칠 수 있음. 

const user = {

    name : 'Mike'

}

const info1 = {

    age : 30,

}

const info2 = {

    gender : 'male',

}

Object.assign(user, info1, info2)

 

 

2)Object.keys() : 키 배열 반환 → 객체 프로퍼티 키를 배열로 반환

  const user = {

       name : 'Mike',

       age : 30,

       gender : 'male',

}

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

 

 

3)Object.values() : 값 배열 반환 객체 프로퍼티 값을 배열로 반환

 const user = {

       name : 'Mike',

       age : 30,

       gender : 'male',

  }

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

 

 

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

const user = {

       name : 'Mike',

       age : 30,

       gender : 'male',

  }

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

 

 

5)Object.fromEntries() : 키/값 배열을 객체로 

  const arr = 

   [

        ["name", "Mike"],

        ["age", 30],

        ["gender", "male"]

   ];

  Object.fromEntries(arr);       

 

 

-------------------------------------------------------------------------------------------------------------

let n = "name";
let a = "age";

const user = {
  [n]: "Mike",     //[n]=name
  [a]: 30,         //[a]=age
};

console.log(user);

 

//어떤게 키가 될지 모르는 객체를 만들 때
function makeObj(key,val){
  return{
    [key] : val,
  };
}

const obj = makeObj("나이", 33);

console.log(obj);

 

const user = {
  name : "Mike",
  age : 30,
};

const user2 = Object.assign({},user);
user2.name = "Tom";

console.log(user);
console.log(user2);

 

const user = {
  name : "Mike",
  age : 30,
};

const result = Object.keys(user);

console.log(result);

 

let arr = [
  ['mon', '월'],
  ['tue', '화']
]

const result = Object.fromEntries(arr);
console.log(result);
반응형

+ Recent posts