- 자바스크립트에서의 객체
원시 값을 제외한 나머지 모든 것이 객체라고 봐도 무방하다. 또한 원시 타입의 값과 달리 변경 가능한 값(mutable value)이라고 할 수 있다.
객체는 0개 이상의 프로퍼티로 구성되며, 프로퍼티는 키와 값으로 구성되어있다. 프로터피 값이 함수일 경우에는 일반 함수와의 구분을 위해 메서드라 지칭한다.
- 객체 생성
C++이나 자바와 달리 자바스크립트의 객체 생성은 클래스와 new 연산자가 필요하지 않다. 사람이 이해할 수 있는 문자 또는 약속된 기호를 사용하여 값을 생성하는 표기법인 리터럴을 이용하면 된다. 중괄호 내에 이를 표현하는데, 이 때의 중괄호는 코드 블럭이 아니므로 닫는 중괄호 뒤에는 세미콜론을 써주어야 한다.
var person = {
name : 'Lee',
sayHello : function () {
console.log('Hello! My name is ${this.name}.');
}
}
console.log(person);
//결과
//{name: "Lee", sayHello: f}
- 프로퍼티
프로퍼티의 키에는 빈 문자열을 포함하는 모든 문자열 혹은 심벌 값을 사용할 수 있다. 프로퍼티의 값은 자바스크립트에서 사용할 수 있는 모든 값을 사용할 수 있다.
여기서 프로퍼티 키는 값에 접근 할 수 있는 식별자 역할을 한다. 다만 키가 식별자 네이밍 규칙을 따르지 않는 이름일 경우에는 따옴표를 사용해야 한다.
- 프로퍼티 접근
프로퍼티에 접근하는 방법으로는 다음의 두 가지가 있다.
1) 마침표 표기법 - 마침표 연산자(.)를 사용
2) 대활호 표기법 - 대괄호 연산자( [ ] )를 사용, 대괄호 연산자 내의 프로퍼티 키는 따옴표로 감싸야 함
var person = {
name: 'Lee'
};
//마침표 표기법
console.log(person.name);
//대괄호 표기법
console.log(person['name']);
- 프로퍼티 값 변경
1) 값 갱신 - 이미 존재하는 프로퍼티에 값을 다시 할당하면 프로퍼티 값이 갱신된다.
2) 동적 생성 - 존재하지 않는 프로퍼티더라도 접근 연산자를 통해 값을 할당하면 프로퍼티가 동적으로 생성되어 추가되어 값이 할당된다.
3) 삭제 - delete 연산자를 사용하여 프로퍼티 삭제가 가능하다.
참고 : 도서 <모던 자바스크립트 Deep Dive>
'TIL' 카테고리의 다른 글
<자바스크립트 Javascript> 객체 사용 시 주의점 (0) | 2021.12.24 |
---|---|
<CSS> 반응형 웹 디자인 - 메뉴바 (3) (0) | 2021.12.23 |
<자바스크립트 Javascript> 타입 변환 (0) | 2021.12.21 |
<CSS> 반응형 웹 디자인 - 메뉴바 (2) (0) | 2021.12.20 |
<자바스크립트 Javascript> 제어문 (0) | 2021.12.19 |