-

javascript의 핵심 개념 본문

언어/javascript

javascript의 핵심 개념

lingi04 2017. 12. 26. 22:49

1. 객체

자바스크립트의 거의 모든 것은 객체.(boolean, number, string - 기본 데이터 타입 / null, undefined 제외)

사실, boolean, number, string의 기본 데이터타입도 객체처럼 다룰 수 있다.

2. 함수

함수도 객체로 취급.

일반적인 객체보다 조금 더 많은 기능이 있는 객체라고 할 수 있음.

함수는 일급객체로 다루어짐

3. 프로토타입

모든 객체는 숨겨진 링크인 플토타입을 가진다.

이 링크는 해당 객체를 생성한 생성자의 프로토타입 객체를 가리킨다.

4. 실행컨텍스트와 클로저

자신만의 독특한 과정으로 실행 컨텍스트를 만들고 그 안에서 실행이 이루어 짐.

실행컨텍스트는 자신만의 유효범위를 갖는다.

이 과정에서 클로저 구현 가능.

5. 자바스크립트의 객체지향 프로그래밍

클래스를 지원하지 않지만 객체지향 프로그래밍 가능.

프로토타입과 체인 클로저로 객체지향프로그래밍에서 제시하는 상속, 캡슐화, 정보 은닉 등의 개념을 소화할 수 있음.

6. 자바스크립트와 함수형 프로그래밍

함수형 프로그래밍 가능.

높은 수준의 모듈화를 가능케 하는 매우 효율적인 프로그래밍 방법

일급객체로서의 함수 특성과 클로저를 사용하여 가능

가독성이 떨어지기도...



단점?!

느슨한 타입체크 - 컴파일 타임에서 잡지 못하.

전역 객체의 존재. 

최상위 레벨의 객체들은 모두 전역 객체 안에 위치

이르 ㅁ충돌의 위험성... 이 부분에 대해 항상 신경써야 함.



- inside javascript

'언어 > javascript' 카테고리의 다른 글

javascript:: ==(동등)연산자와 ===(일치) 연산자  (0) 2018.01.04
javascript::유사배열객체  (0) 2018.01.04
javascript::배열  (0) 2018.01.04
javascript::객체  (0) 2018.01.03
javascript :: prototype  (0) 2018.01.02
Comments