객체 object 란, JS 데이터 타입 중 하나.
{ key : value } 쌍으로 이루어져있고 이 쌍을 property라고 부른다. 배열과 달리 순서가 중요하지 않다.
배열은 대괄호 [ ] 를 이용하고, 객체는 중괄호 { } 로 표시한다. (Object Literal)
객체로 표현하면 순서를 기억하지 않아도 된다는 장점이 있다.
배열에서는 myArr[1] 처럼 index number 로 속성에 접근했다. 그러나 객체는 number가 없다.
'.' 점을 찍어서 접근하는 방법
let myArr = {
name : 'boyoon',
age : '26',
mbti : 'ISFP'
}
console.log(myArr.name);
console.log(myArr.age);
그러나, 변수를 사용해서 접근할 때는 불가능하다.
let myArr = {
12 : 'a',
16 : 'b',
19 : 'c'
}
let name = 16;
let player = myArr.name; // error
let player = myArr[name]; // 'b'
대괄호를 이용하여 접근하는 방법
console.log(myArr['name']);
console.log(myArr['age']);
변수 사용해서 접근할 때 가능하다.
let myDog = {
name : 'Sulli',
legs : 4,
tails : 1,
friends : ['everything!']
}
myDog.name = 'Happy Sulli' // 객체 value값 수정할 때
myDog.bark = 'worl-worl' // 객체 속성 추가할 때
delete myDog.tails; // tails 속성 삭제할 때