객체는 key를 이용해서 속성에 접근한다.
Dot notation 방법은 점을 이용해서 접근하는 방법이다.
let mySelf = {
name: 'SeYoung',
location: {
country: 'South Korea',
city: 'Seoul'
},
age: 25,
cats: ['비비', '들이']}
위에 객체에서 'SeYoung'이라는 value에 접근하고 싶다면
mySelf.name//'SeYoung'
이렇게 객체 이름을 쓰고 점을 찍은 후 접근하고 싶은 값의 key를 입력하면 된다.
그럼 value에 객체가 할당된 경우는 어떨까?
mySelf.location
//결과
[object Object] {
city: "Seoul",
country: "South Korea"
}
할당된 객체가 출력된다.
Bracket Notation 방법은 대괄호를 이용하는 방법이다.
mySelf['name']//'SeYoung'
객체의 이름을 쓰고 대활호를 열어준 다음 내가 접근하고 싶은 value의 key를 따옴표로 감싸서 적으면 된다.
객체의 key는 기본적으로 string이다. 원래는 따옴표 안에 작성해야하지만 자바스크립트에서 자동적으로 처리해주기 때문에 따옴표 없이 작성해도 작동한다.
Bracket Notation으로 key에 접근할 때 따옴표를 써야하는 것도 key가 string이기 때문이다.
그렇기 때문에 저 string을 변수에 담아도 key로 사용할 수 있다. 간단한 예시로 알아보자.
let mySelf = {
name: 'SeYoung',
location: {
country: 'South Korea',
city: 'Seoul'
},
age: 25,
cats: ['비비', '들이']}
let myKey = 'cats'
console.log(mySelf['cats'])
console.log(mySelf[myKey])
//console
["비비", "들이"]
["비비", "들이"]