JavaScript ECMAScript란?
ECMAScript란?
ECMA International이라는 정보통신 비영리 표준화 기구에서 정의한 스크립트 언어에 대한 '사양'입니다. 스크립트 언어로서 준수해여 하는 규칙, 지침들을 규정합니다.
ECMAScript vs JavaScript?
JavaScript는 ECMAScript의 사양을 준수하는 스크립트 언어입니다. 즉, JavaScript는 ECMAScript의 사양을 따라 제작된 '언어'이며, 우리는 이 '언어'를 이용해 스크립트 코딩을 할 수 있는 것입니다.
ECMAScript 6 === ES6란?
ES6은 ECMAScript의 여섯 번째 릴리즈라고 생각하시면 됩니다. 기존의 콜백 지옥과 같은 불편했던 부분들을 상당 부분 개선하여 내놓은 표준으로, 많은 개발자들이 사랑하고 애용합니다.
그러나, 이러한 ECMAScript 표준은 브라우저에 따라 지원되는 범위가 다릅니다. 이는 브라우저마다 JavaScript를 Interpreting하는 엔진이 다르기 때문입니다. 따라서 개발자들은 다양한 브라우저에서 웹앱이 정상적으로 실행될 수 있도록 크로스 브라우징
을 구현해야 합니다.
Babel
개발자들은 ES6에서 도입된 다양한 기능들과 Syntax들을 사용하여 개발의 편의성을 얻을 수 있었지만, 브라우저 간의 호환성 문제를 해결하는 대에는 고역을 겪었습니다. 특히 국내에서 심지어 최근까지도 사용되고 있는 Internet Explorer가 ES6를 대부분 지원하지 않으므로, 한국에서 웹앱을 서비스하기 위해서는 크로스 브라우징
의 구현은 필수였습니다.
이러한 비생산적이고 귀찮은 과정을 단 한 번에 해결해주는 놈이 등장하였습니다. 바로, 유명한 Transpiler, 바벨(Babel)
입니다. 바벨은 ES6으로 작성된 코드를 크로스 브라우징
을 할 수 있도록 ES5의 코드로 바꿔줍니다. 이 Babel
의 등장으로, JavaScript 코딩에서는 크로스 브라우징을 고려하지 않게 되었습니다.
그렇다면..
그렇다면 JavaScript 개발자라면, 최신 기술과 Syntax가 적용된 ES6를 써보고 싶다는 생각.. 드시지 않나요? 지금 바로 ES6에 추가된 새로운 기능들과 Syntax를 확인해보세요. 다양한 글들이 있습니다!
'공부 > JavaScript' 카테고리의 다른 글
JavaScript에서의 this와 this 바인딩 (0) | 2020.06.27 |
---|---|
ES6에서 Arrow Function 사용하기 (0) | 2020.06.26 |
ES6에서 let/const로 Block-scoped 변수 선언하기 (0) | 2020.06.26 |
JavaScript에서 var를 사용하면 안되는 이유 (0) | 2020.06.26 |
ES6에서 배열을 활용하는 다양한 방법 (0) | 2020.06.25 |
댓글
이 글 공유하기
다른 글
-
ES6에서 Arrow Function 사용하기
ES6에서 Arrow Function 사용하기
2020.06.26 -
ES6에서 let/const로 Block-scoped 변수 선언하기
ES6에서 let/const로 Block-scoped 변수 선언하기
2020.06.26 -
JavaScript에서 var를 사용하면 안되는 이유
JavaScript에서 var를 사용하면 안되는 이유
2020.06.26 -
ES6에서 배열을 활용하는 다양한 방법
ES6에서 배열을 활용하는 다양한 방법
2020.06.25