JavaScript[ECMAScript] 정리


정리한다, 정리한다, 마음속으로 외치며 그날의 피로만 정리하던 나를 반성한다...


1. 데이터 타입


ECMAScript에는 다섯 가지의 '기본 데이터 타입(*Primitive Data Type)'이 존재한다. 종류는 아래와 같다.


- Undefined : 정의되지 않은 변수 (변수를 선언한 후 값을 할당하지 않은 경우)

- Null : 빈 값 (변수를 선언한 후 'null' 이라는 값을 할당한 경우)

- Boolean : 불리언 (참, 거짓)

- Number : 숫자

- String : 문자열


그리고 '복잡한 데이터 타입'인 객체(Object)가 존재한다.

(*Array, Function, Date, RegExp와 같은 데이터는 Object이다.)


ECMAScript는 느슨한 타입을 사용한다. 우리가 변수를 선언할 때 변수의 데이터 타입과 상관없이(데이터 타입도 명시하지 않는다) 같은 문장에서 ','로 구분하여 한꺼번에 선언, 초기화할 수 있는 이유는 바로 느슨한 타입을 사용하기 때문이다. 그러면 데이터의 타입을 확인하기 위해서는 어떻게 해야할까?!


typeof 연산자를 사용하면 느슨한 타입의 변수들이 어떠한 데이터 타입인지를 알수있다.


JSFiddle의 Result를 확인해보자. 해당 변수에 어떠한 값을 초기화했는지 확인할 수 있으며 클릭하면 어떤 데이터 타입인지 alert으로 알려준다.


여기서 주목할 것은 typeFour의 null이다.

typeFour를 클릭하면 alert 창에는 object라고 표기되어 있다. 왜 Object를 반환하는 것일까?! null은 빈 객체를 참조한다. 그러므로 null 값을 할당하고 object가 나온다고 놀라지 말자. 만약 데이터 타입에 그저 비워져있는 값이 필요하다면 typeOne처럼 값을 할당하지 말아야 한다. 반대로 해당 변수가 빈 객체를 가리키게 하려면 해당 변수에는 반드시 null 값을 할당해줘야 한다.

! 아... 시간이 벌써... 자야겠다...

@ 아무래도 자바스크립트 메뉴를 따로 만들어야겠다.

$ 내일부터는 하루에 하나씩 정리하기로 한다.



'Front' 카테고리의 다른 글

[자바스크립트] 로깅 함수  (0) 2017.06.01
JavaScript[ECMAScript] 2. 불리언 타입  (0) 2016.07.08
Ionic 하이브리드 앱  (0) 2016.06.28
Angular Material  (1) 2016.06.17
AngularJS $watch  (0) 2016.06.16

+ Recent posts