2022.04.21 - javascript와 ECMAScript의 차이
- ECMA-262
Ecma 인터내셔널에 의해 제정된 하나의 기술규격의 이름, 범용목적의 스크립트언어에 대한 명세를 담고있다.
( 스크립트 언어에 대한 표준을 정의한 규칙)
- 스크립트 언어 (Script Language)
독립된 시스템에서 작동하도록 특별히 설계된 프로그래밍 언어
응용프로그램과는 달리 독립적이고, 사용자가 직접 프로그램을 의도에 따라 동작시킬 수 있다.
1. ECMAScript
ECMAScript는 스크립트 언어가 준수해야하는 규칙, 세부사항 및 지침을 제공한다.
2. JavaScript
ECMAScript의 사양을 준수하는 범용 스크립팅 언어이다.
- JavaScript 엔진이란?
JavaScript코드를 이해하고 실행하는 프로그램 또는 인터프리터이다.
- JavaScript 엔진의 종류
Google Chrome의 V8, Mozilla Firefox의 SpiderMonkey, Microsoft Edge의 Chakra등이 있다.
- 각각의 JavaScript 엔진이 가진 특징
1) 수행능력이 차이가 난다. 두 개의 웹 브라우저는 명령어를 이해할 수는 있는 능력은 같지만 속도에서 차이가 날 수 있는데,
JavaScript 엔진이 얼마나 효율적으로 JavaScript를 처리하고 있는가에 따라 다르기 때문이다.
2) 지원되는 ECMAScript가 다르다.
브라우저마다 언어를 지원하는 능력이 다르기 때문
브라우저가 얼마나 JavaScript를 잘 지원하느냐와 관련해서, ECMAScript호환성 이라는 단어를 더 많이 사용한다.
3. ECMAScript6 (ES6)
ECMA-262 표준의 제 6판이며, ECMAScript 사양의 주요 변경사항 및 개선사항을 명세한다.
4. 바벨 (BABEL)
다양한 브라우저의 종류로 발생하는 호환성 문제 때문에 기술을 손쉽게 사용하기 쉽지 않은 경우가 있는데,
이를 해결하기 위해 바벨이 등장했다. 바벨은 ES6 사양으로 작성된 코드를 함수적으로 동일한 ES5 코드로 바꿔준다.