Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 유데미
- 자바스크립트
- 페이지네이션
- 코드스테이츠 메인프로젝트
- 버블정렬
- CSS
- 자료구조
- input class
- Node js
- javascript
- kakao map api
- next/Image
- OSI 7계층
- primitive type
- 배열
- 코드스테이츠
- JavaScript Deep Dive
- 알고리즘
- 재귀함수
- 백준
- 코딩테스트
- 정규표현식
- 이벤트 루프
- nodejs
- Native select
- react js
- MUI
- sort
- 프론트엔드
- 백준 nodeJS
Archives
- Today
- Total
신입 개발자에서 시니어 개발자가 되기까지
[Javascript Deep Dive] 10장 객체 리터럴 본문
1. 객체의 프로퍼티 키에 문자열이나 심벌 값 외의 값은 암묵적으로 문자열로 변환된다.
2. 객체 프로퍼티 접근법
a. 대괄호 접근법의 주의사항
- 반드시 따옴표로 감싼 문자열일 것.
- 그렇지 않은 경우 해당 키를 식별자로 인식하고, referenceError가 발생한다. 참고로 객체에 존재하지 않는 프로퍼티에 접근하면, undefined를 반환하고 에러가 발생하지 않는다.
- key가 변수라면, 대괄호 접근법을 사용해야 한다.
b. 식별자 네이밍 규칙을 준수하지 않은 경우, 대괄호 표기법만을 사용해야한다.
- 브라우저 환경에서 person.last-name이 NaN이 출력되는 이유 : person.last를 먼저 평가함. => undefined출력. Name은 브라우저 환경에서 전역변수로서 기본값이 빈 문자열이다. 그러므로 last-name은 undefined - '' 이 되는 것임. -는 연산자 -로 인식됨.
3. 객체 프로퍼티 생성
a. 프로퍼티 키 값을 대괄호로 감싸 새로운 프로퍼티를 생성할 수 있다.
b. 빈배열 obj에 obj['name'] : HJ 이렇게 입력하면 obj { name : "HJ" } 가 출력됨.
프로퍼티 키에 문자열이나 심벌 값 외의 값을 사용하면 자바스크립트 엔진은 암묵적으로 타입을 변환시켜 string으로 만든다. key값으로 숫자 리터럴을 사용하면, 타입이 string인 숫자가 key가 됨.
'책읽기 > Javascript Deep Dive' 카테고리의 다른 글
[Javascript Deep Dive] 15장 let, const (0) | 2022.10.03 |
---|---|
[Javascript Deep Dive] 24장 클로저 (1) | 2022.10.03 |
[Javascript Deep Dive] 13장 스코프 (0) | 2022.10.03 |
[Javascript Deep Dive]9장 타입변환과 단축평가 (0) | 2022.10.03 |
31장 정규표현식 (0) | 2022.09.14 |