자바스크립트의 구현은 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
'IT > 자바스크립트' 카테고리의 다른 글
[javascript] ES6 반드시 알아야 할 문법 let, const의 공통적인 특징 5가지 (0) | 2018.08.23 |
---|---|
[javascript] ES6 Arrow Function (0) | 2018.08.21 |
[javascript] element select 함수 사용하기 (0) | 2018.08.18 |
[javascript] promise 객체 소개 (0) | 2018.08.14 |
[javsscript] es6 dynamic import (0) | 2018.08.12 |
댓글