ECMAScript는 자바스크립트 표준 명세서 (JavaScript Specification) 이라고 이해하면 된다. ECMAScript는 1년마다 새로 출시되면서 간결하게 소통하기 위해 "ES6" 라는 용어를 그대로 사용하기도 하지만 공식적인 버전 명칭은 연호를 붙여서 "ES2016", "ES2016" 등으로 불리운다.
ES6는 자바스크립트의 발전에 굉장히 큰 영향을 준 버전이다. ES5 까지의 문제점들을 보완하고, 코드를 더 안전하고 간결하게 작성할 수 있는 유용한 문법들이 굉장히 많이 등장했기 때문이다. 그러나 한 가지 문제는 우리가 사용하는 웹 브라우저들은 당장 새로운 버전의 문법들을 완벽하게 지원할 수 없다는 점이다. 때문에 어떤 프로그램을 개발할 때 최신 버전을 바로 적용하는 것이 아니라 보편적으로 사용되는 브라우저들이 범위내에서 ECMAScript의 버전을 준수하는 모습이 일반화 되었다.
이렇게 변화하는 시대와 상황에 맞추어 현시점에 사용하기 적합한 범위 내에서 최신 버전의 표준을 준수하는 자바스크립트를 Modern JavaScript라고 한다.
JavaScript와 ECMAScirpt에는 명확한 차이가 있다.
| JavaScript | ECMAScript |
|---|---|
| 프로그래밍 언어 (ECMAScript를 준수해서 만들어낸 '결과물') | 프로그래밍 언어의 표준 (JavaScript가 갖추어야 할 내용을 정리해둔 '설명서') |
| JavaScript는 ECMAScript를 기반으로 하지만 ECMAScript에 정의된 내용 외에도 다른 부가적인 기능이 있다. ex) DOM을 다루는 문법 등 | 모든 스크립트 언어가 지켜야 하는 표준 |