해당 게시물은 "모던자바스크립트 Deep Dive(위키북스)" 저서를 참고 및 인용 하였음을 알려드립니다.
데이터 타입
을 갖는다.데이터 타입
을 제공한다.숫자 타입
만 존재한다.// 모두 숫자 타입이다.
var interger = 10; // 상수
var double = 10.12; // 실수
var negative = -20; // 음의 정수
Infinity
: 양의 무한대-Infinity
: 음의 무한대NaN
: 산술 연산 불가 (not-a-number)console.log(10 / 0); //Infinity
console.log(10 / -0); //-Infinity
console.log(1 * 'string'); // NaN
텍스트 테이터
를 나타내는 데 사용한다.//문자열 타입
var string;
string = '문자열'; // 작음따옴표
string = "문자열"; // 큰따옴표
string = `문자열`; // 백틱(ES6)
멀티라인 문자열
, 표현식 삽입
, 태그드 템플릿
등 편리한 문자열 처리 기능 제공이스케이프 시퀀스
를 사용해야 한다.문자열 연산자 (+)
를 사용하여 연결할 수 있다.var first = 'Hyeon-jun';
var last = 'Moon';
// ES5 : 문자열 연결
console.log('My name is ' + first+ '' + last + '.');
// My name is Hyeon-jun Moon.
표현식 삽입(expression interpoation)
을 통해 간단히 문자열을 삽입할 수 있다.var first = 'Hyeon-jun';
var last = 'Moon';
// ES6 : 표현식 삽입
console.log(`My name is ${first} ${last}.`);
// My name is Hyeon-jun Moon.
true
와 false
뿐이다.var foo = true;
console.log(foo); // true
foo = false;
console.log(foo); // false
var foo;
console.log(foo); // undefined
// 심벌 값 생성
var key = Symbol('key');
console.log(typeof keey); // symbol
// 객체 생성
var obj = {};
// 이름이 충돌할 위험이 없는 유일무이한 값이 심벌의 프로퍼티 키로 사용
obj[key] = 'value';
console.log(obj[key]); // value
확보
해야 하는 메모리 공간의 크기를 결정참조
할 때 한 번에 읽어 들여야 할 메모리 공간의 크기를 결정해석
할지 결정사전에 선언
자유롭게
할당 가능재할당
에 의해 변수의 타입은 언제든지 동적으로 변할 수 있다.