반응형

JavaScript Data Type


자바스크립트 데이터 타입


- 자바스크립트의 데이터 타입은 기본타입과 참조타입으로 나뉜다.


구분

종류

내용

기본타입

숫자 (number)

문자열 (string)

불린값 (boolean)

undefined

null

그 자체가 하나의 '값' 을 나타냄

본 데이터 타입인 boolean, number, string 그리고 특별한 값인 null과 undefined 는 '객체'가 아니다.

참조타입

객체 (Object)

    > 배열 (Array)
    > 함수 (Function)
    > 정규표현식

자바스크립트에서 기본타입을 제외한 모든 값은 '객체' 다.
따라서 배열, 함수, 정규표현식 등은 모두 자바스크립트 객체로 표현된다.
객체란 '이름(key):값(value)' 형태의 프로퍼티들을 저장하는 컨테이너.


위 내용은 자바스크립트의 핵심개념(http://nm817.tistory.com/26) 에서 확인할 수 있다.

반응형
반응형

Javascript 핵심개념


객체

- 자바스크립트의 모든것은 '거의' 객체이다. 필자도 공부 하면서 알게된 거지만, 모든 데이터타입이 '객체' 인것은 아니다.

var intNum = 10;

예를들어 위와같은 소스코드에서 필자는 intNum 이라는 변수를 '객체' 라고 정의하고, 사용하고 있었다.

하지만 자바스크립트에서 이를 '객체' 라고 표현하지 않고, 기본 데이터 타입(기본타입) 으로 지정이 된다.


자바스크립트에서 '객체'라 함은 단순히 '이름(key):값(value)' 형태의 프로퍼티들을 저장하는 컨테이너다.


따라서 기본 데이터 타입인 boolean, number, string 그리고 특별한 값인 null과 undefined 는 '객체'가 아니다.

하지만 자바스크립트에서 세 가지 기본 타입도 모두 객체처럼 다룰 수 있기 때문에, 자바스크립트는

null과 undefined를 제외한 모든 것을 객체로 다룰 수 있다.



함수

- 함수 또한 자바스크립트 에서는 '객체' 로 구분된다. 일반적인 객체보다 조금 더 많은 기능이 있는 객체 라고 할수 있다.

함수 선언문, 함수 표현식, function()생성자 함수 등으로 나뉘며, 따로 정리해서 포스팅하겠다.



프로토타입

- 모든 객체는 숨겨진 링크인 프로토타입 을 가진다. 프로토타입이란, ECMAScript에서 정의한 표현으로,
해당 객체를 생성한 생성자의 프로토타입 객체를 가르킨다.



실행 컨텍스트와 클로저

- 자바스크립트는 독특한 과정으로 실행 컨텍스트를 만들고, 그 안에서 실행이 이루어진다. 이 실행 컨텍스트는
자신만의 유효범위(Scope)를 갖는데, 이 과정에서 클로저를 구현할 수 있다.


※ 프로토타입, 실행컨텍스트, 클로저, 유효범위(Scope) 등 생소한 단어들이 많이 나온다.

해당 용어에 대한 설명과 사용법 등은 따로 포스팅을 하고, 기본적인 개념과 객체에 대하여 어떤것들이 있는지만 파악하였다.





반응형
반응형

JavaScript 란? - 웹 브라우저에서 동작하는 스크립트 언어


선행지식

- HTML

> 자바스크립트의 제어 대상이 html 문서이기 때문에, 자바스크립트를 공부함에 있어 선행학습이 필수로 필요하다.

- CSS

> 옵션, 개념만 이해해도 되지만, JS에서 클래스또한 제어 가능하다.


JavaScript란?

- 웹브라우저에서 동작하는 스크립트 언어

- HTML과 CSS로 이루어진 웹페이지를 동적으로 변경해준다.

 Javascript 활용 범위


웹 개발

- 크롬, 파이어폭스 등 웹 브라우저의 버전에 계속되서 업데이트 되고 있다. 새 버전이 나올때마다, 각 브라우저는

자바스크립트 엔진의 성능향상에 대한 내용이 들어가 있다.


서버 개발

- Node.js를 대표로 자바스크립트를 활용한 서버 개발 또한 많이 이루어지고 있다. 보다 쉽게 서버개발이 가능한 자바스크립트가 나오고 있다.

애플리케이션 개발

- 웹이 하나의 플랫폼으로 진화하면서, 웹OS와 비슷한 크롬OS 등이 나오면서 휴대폰과 같은 모바일 기기에서도 웹 기반의 각종 기술이 활용되고 있다.

반응형

+ Recent posts