wecode 1주차가 끝난 주말 토요일에 작성..
2020.06.27
hello라는 변수에 빈 객체를 할당한다.
let hello = {};
객체는 순서가 없는 데이터의 모음이다.
반대로
데이터는 순서가 있는 배열이다.
let arr = {'고양이', '귀여워', '멍멍이', '좋아'-;
arr의 요소가 차례대로 추가된 것이고
index는 0부터 시작한다..
arr[0]은 '고양이'
arr[1]은 '귀여워'
ket는 property name
value는 property value라 한다.
키는 특정 값을 갖고 있는 변수같은 역할을 한다.
예를 들어,
let difficult = {
'my name': 'boong',
color: 'silver',
키: '한글인 키는 따옴표가 없어도 되는군 !!'
'!키': '느낌표 있는 키는 따옴표가 필요하군'.
는 없어도 되는군'
};
객체의 키에는 스페이스, 한글, 특수문자 등이 들어간다.
변수(variable)을 선언할 때는 할 수 없었던 표현들이다.
color와 같이 키에 특수문자가 없으면 따옴표를 생략하고 쓸수가 있다..
접근은 dot(.)으로 접근하는 방법과,
[]대괄호로 접근하는 법이 있다.
let difficult = {
33: '숫자 형식도 되네'.
'my name': '스페이스 포함 가능',
color: 'silver',
키: '한글인 키는 따옴표가 없어도 되는군 !!',
'!키': '느낌표 있는 키는 따옴표가 필요하군'.
는 없어도 되는군'
};
console.log(difficult.color);
사실 키만 알고 있으면 dot(.)으로 접근하는법이
가장 편하다고 한다.
dot으로 접근할 때는 따옴표 없이 키를 바로 써주어야 한다.
반면, 대괄호 []로도 접근할 수도 있다.
console.log(difficult['color']);
대괄호로 접근하려면 키 이름을 따옴표로 감싸서 작성해주어야 한다.
console.log(difficult.my name);
이렇게 콘솔을 찍으면 오류가 난다.
스페이스가 포함된 키는 대괄호로 접근해야만 한다.
console.log(difficult['33']);
어떤 것은 dot(',')접근 가능, 어떤 것은 대괄호만 가능하다
let name = '키';
console.log(difficult[name]);
변수에 키 이름이 저장되어있으면, 변수로도 프로퍼티에 접근 가능하다..
이때 dot(.)다음에 변수명을 넣어서 프로퍼티에 접근 가능한지 살펴보자.
console.log(difficult.name);
실행결과 undefined가 나온다.
dot(.)으로 접근한다는 것은 실제 키 이름을 쓸 때이다.
'name'이라는 키가 있으면 그에 해당하는 프로퍼티에
접근할 수 있었으나, 존재하지 않았기 때문에 undefined가 나온 것이다.
변수로 접근할 때는 항상 대괄호로 접근해야함을 알 수 있었다.
difficult[name] = '값 바꾼다';
console.log(difficult[name]);
difficult.color = '색깔';
console.log(difficult.color);
console.log('생성전: ' + difficult.new);
difficult.new = '새로 추가된 프로퍼티';
console.log('생성후: ' + difficult.new);