https://wormwlrm.github.io/2018/10/03/What-is-the-difference-between-javascript-and-ecmascript.html
이 글은 Michael Aranda의 『What’s the difference between JavaScript and ECMAScript?』를 번역하고 이를 바탕으로 재구성한 글임을 밝힙니다.
하루는 웹 개발을 하다가 흔히 사용하는 개념인 JavaScript와 ECMAScript가 정확히 무슨 차이가 있는지 궁금해졌습니다. 그래서 구글링을 해보았지만, 이는 오히려 제 혼란을 가중시켰습니다. 검색해 나온 답변들은 너무 모호했고, 심지어 상반된 의견들도 있었습니다.
저는 거의 울 것 같은 충동을 느꼈지만, 두 용어의 차이점에 대해 명확히 짚고 넘어가고 싶었습니다. 아, 물론 생산적이긴 일이긴 하지만 아마 고통스럽겠지요.
이 글은 제가 현재까지 알고 있는 JavaScript와 ECMAScript에 대한 이해를 바탕으로 작성합니다. 이 글은 JavaScript에는 친숙하지만, EMCAScript와 웹 브라우저, Babel과 같은 JavaScript를 둘러싼 여러가지 환경들에 대해 이해하고자 하는 분들에게 초점이 맞추어져 있습니다. 그리고 스크립팅 언어, JavaScript 엔진 및 브라우저 등에 대해 자세히 알아볼 것입니다.
그럼 시작해보죠.
지금부터는 JavaScript와 ECMAScript를 헷갈리게 만드는 용어들에 대해 그 정의를 짚고 넘어가겠습니다. 아래의 정의와 비유들은 아마 100% 정확하지는 않을 수 있지만, 둘 사이의 혼동되는 관계에 대해서 확실하게 이해할 수 있을 것입니다.