[JavaScript]ECMA Script, ES 정리와 버전별 특징


자바스크립트를 공부하던 중에 ECMA Script, ES6 같은 용어들을 보곤 했는데 정확히는 몰랐던 상태였다. 이번기회에 알아보고자 한다.


ECMA Script란

자바스크립트는 1990년대 Netscape의 Brendan Eich라는 사람에 의해 최초 개발되었습니다. 이후 MS에서 Jscript라는 언어를 개발해 IE에 탑재하였는데, 이 두 스크립트가 제각각이라, 표준이 필요하게 되었습니다.

표준을 위해 자바스크립트를 ECMA(European Computer Manufacturers Association)라는 정보와 통신시스템의 비영리 표준 기구에 제출하였고, 표준에 대한 작업을 ECMA-262란 이름으로 시작하여 1997년 6월에 채택 되었습니다.

종종 볼 수 있는 ES는 ECMA Script의 약자입니다. ES5는 ECMA Script 5의 규격을 따른다고 생각하면 됩니다.


JavaScript와 ECMA Script

자바스크립트는 언어이고, ECMA 스크립트는 규격, 표준입니다.


ES버전에 따른 특징

ES3

  • 흔히 말하는 자바스크립트


ES5

  • 배열에 forEach, map, filter, reduce, some과 같은 메소드 지원

  • Object에 대한 getter / setter 지원

  • JSON 지원


ES 2015(ES6)

  • let, const 키워드 추가

    • 기존의 변수는 함수 scope를 가진 var 키워드를 이용하였습니다. 때문에 block scope를 가진 let과 const 키워드를 추가했습니다.
  • arrow 문법 지원

    • arrow 문법은 두가지 장점이 있습니다. 첫째, 편하고 간결해진 코드를 작성할 수 있습니다. 둘째 this를 바인딩 하지 않습니다.
  • iterator / generator 추가

  • module import / export 추가

  • Promise 도입


ECMA 2017(ES8)

  • async - await 도입