ES6=ES2015는 같은의미
ESx 할때 x는 년도를 의미하는게 아니라 Edition번호를 의미함
즉 ES2018은 ES8이 아님(ES7임)
ES2015와ES5는 같은 의미가 아님
왜 명칭이 두개가 있는거야? 헷갈리게
이걸 이해할려면 이 단체의 역사를 알아야함.
간단히 요약하면
1.
ES3,4,5 이런식으로 JS의 사양을 발표함 해당 버전은 몇년에 한번씩 발표됨
2.
ES5이후부터 웹 생태계의 빠른 변화를 눈치채고 1년에 한번씩은 무조건 갱신합시다 라는 움직임이 생김
3.
ES6, ES7, ES8, ES9, ES10, ES11, etc
이런식으로 진행되면 보기가 어렵다는 이유로
발행년도를 기준으로 새로운 이름을 만듬
통일성이 없으니 년도
로 부릅시다
ES6과ES2015는 같은의미
용어통일을 위해 년도
로 부르는걸 추천하고 있음
ES2015이후부터 매년 갱신되고 있음
정식명칭은ECMA-262 edition 6
ES의 정확한 명칭은 ECMA-262
이다
그러하다.
Ecma International이란 뭐하는 곳?
ES뿐만 아니라 여러가지 사양을 정하는 단체 C#의 사양을 정하기도 한다고함
이전에는 ECMA = European Computer Manufacturers Association(欧州電子計算機工業会)
라는 단체였다고함.
국제화에 맞춰 1994년에 ECMA 뒤에 International
가 추가되었다고함 window95보다 전 이야기..
여튼 예전에는 ECMA가 위에 기술한 약자로 사용되었으나 현재는 업계에서 고유명사같이 사용되고 있는 듯
ES6
본래는 ES(ECMA-262) Edition6를 의미함 class라든지 화살표함수라든지 현재 많이 사용되는 모던JS 기능들이 추가됨
ES2015
ES6 이전 버전인 ES5가 2009년 발표하고 2011년 ES5.1이라는 이름으로 대규모 업데이트가 있었으나 해당내용의 발표가 2015년이었다.
이때, 웹 생태계의 빠른 변화에 맞춰 1년에 한번씩은 무조건 새로운 사양을 발표하고자 하는 움직임이 있었고
Editon번호보다는 발행년도를 기준으로 부르는게 알기 쉽기에 해당 사양의 타이틀에 년도 명칭을 추가하기로함
ES2016, ES2017
현재 공개되어있음 ES2015만큼의 큰 기능의 변화는 없지만 새로운 기능이 계속 추가되고 있다
ES2015(ES6) 이후의 사양을 모던JS라 칭함
ES2015의 변화가 워낙커서 그 이전의 것들을 낡은JS(legacy JavaScript), 그 이후를 모던JS (modern JavaScript) 라고 부른다
ES3,ES5 = legacy JS ES6 = modern JS
Reference Link:
https://ginpen.com/2017/12/24/es6-vs-es2015/