본문 바로가기
IT/자바스크립트

[javascript] 자바스크립트 구현

by 모찌 2018. 8. 20.




자바스크립트의 구현은 ECMAScript, DOM, BOM 으로 나누어 진다.


자바스크립트 1.1이 ECMA(유럽 컴퓨터 제작자 협회 : European Computer Manufacturers Association)에 제안되었다. 

ECMAScript는 자바스크립트의 문법과 의미를 표준화하여 만든 것이다. 크롬이나 익스플로러 등 다양한 웹 브라우저에서 중립적으로 사용할 수 있다.



ECMAScript



ECMAScript 언어는 웹 브라우저에 종속되지 않는다. 입력이나 출력이 존재하지 않는 대신 DOM 이나 BOM 같은 것을 제공한다. 




ECMAScript의 구성 요소


문법

타입

선언문

키워드

예약어

연산자

객체 




ECMAScript의 버전


ECMA 1판 : 자바스크립트 1.1 과 거의 같지만 브라우저 종속적인 코드를 삭제


ECMA 2판 : 1판의 교정본 수준, 기능 추가, 변경, 제거한 내용이 없음


ECMA 3판 : 문자열을 다루는 방법, 에러 정의, 숫자형 출력 업데이트 (표준에 대한 진자 첫 번째 업데이트)


ECMA 4판 : 변수 타입을 고정, 새로운 선언문과 데이터 구조, 클래스와 상속, 데이터 조작 업데이트 (급격한 도약으로 폐기)


ECMA 5판 : JSON데이터 파싱, JSON 객체, 상속과 프로퍼티 정의 메서드, 스트릭트 모드 업데이트 (공식 발표)







DOM


문서 객체 모델(Document Object Model) 은 XML을 HTML에서 사용할 수 있도록 확장한 API 이다.


DOM은 문서를 표현하는 트리를 생성하고 이를 통해 문서의 구조와 요소를 자유롭게 수정하는 API를 제공한다.



DOM 레벨1


DOM 코어 : XML 기반 문서를 노드 트리로 변환해 쉽게 접근하고 조작할 수 있도록 함. 

DOM HTML : HTML에 밀접한 객체와 메서드를 DOM 코어에 추가해 확장



DOM 레벨2


마우스 및 사용자 인터페이스 이벤트를 지원, 범위와 이동을 추가했으며 CSS를 지원.


DOM 이동과 범위 : 문서 트리 이동 및 조작 

DOM style : CSS를 통해 요소의 스타일 변경 

DOM event : 이벤트 또는 이벤트 처리 

DOM Views : 문서의 다양한 뷰 처리


DOM 레벨3


문서를 저장, 불러오기, 유효 검사 방법 제공


DOM 이동과 범위 : 문서 트리 이동 및 조작 

DOM style : CSS를 통해 요소의 스타일 변경 

DOM event : 이벤트 또는 이벤트 처리 

DOM Views : 문서의 다양한 뷰 처리


DOM 기타


Scalable Vector Graphic

Mathematical Markup Language

Synchronized Multimedia Integration Language





BOM


브라우저 객체 모델(BrowserObject Model) 은 브라우저 창에 접근하고 조작할 수 있도록 하는 API이다.



일부 기능

screen 객체 : 사용자의 화면 해상도에 대한 정보

쿠키

location 객체 : 불러온 페이지의 정보

navigator 객체 : 브라우저의 상세 정보

브라우저 창 이동, 크기 조절, 닫기

브라우저 새창

XMLHttpRequest와 비슷한 Custom 객체

Scalable Vector Graphic 

Mathematical Markup Language

Synchronized Multimedia Integration Language







댓글