Notice
Recent Posts
Recent Comments
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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
- nodeJS
- 자바
- java
- webpack
- javascript native
- javascript 값
- Spring Session
- 이펙티브자바
- Babel
- java.util.LinkedHashMap cannot be cast
- webstorm
- Intellij
- javascript value
- spring batch #스프링 배치 #스프링 배치 중복 실행
- javascript type
- Redis
- ES6
- 이펙티브 자바
- javascript
- JetBrains
- CAS
- spring security
- requestbody
- effectivejava
- ECMA2015
- javascript 기초
- you don't know js
- Spring
- Effective Java
- 자바스크립트
Archives
- Today
- Total
귀찮지만 만들어보자
you don't know javascript 리뷰 - 1장 타입(type) 본문
1. 타입
1-1. js type 7가지 -> typeof 적용
ex) console.log(typeof "apple"); -> "string" 출력
- null -> "object"
: 타입은 object로 취급되는 예외적인 케이스 (왜 이따구로 만들었을까)
- undefined -> "undefined"
- boolean -> "boolean"
- number -> "number"
- string -> "string"
- object -> "object"
- symbol (es6 부터 추가) -> "symbol"
* typeof가 반환하는 문자열 타입은 "function" 이라는 것이 있다
- function도 object의 하위 타입이므로 역시 객체이다
- 배열(Array) 역시 object의 하위 타입
1-2. 값은 타입을 가진다
- 값에는 타입이 있지만, 변수에는 타입이 따로 없다 -> js의 가장 큰 특징중 하나
- 변수에 typeof 연산자를 대어보는 것은 *변수에 들어있는 값의 타입*을 묻는것
1-3 값이 없는 vs 선언되지 않은
ex)
var a;
console.log(a); -> undefined (값이 없는)
console.log(b); -> ReferenceError (선언되지 않은)
- typeof a -> undefined
- typeof b -> undefined
= typeof 연산자는 ReferenceError에 대한 안전가드 역할을 한다 (왜 이따구로 만들었을까)