[JavaScript] Babel 개념 (JavaScript Compiler/Transpiler)

JavaScript Version

JavaScript는 버전이 다양하고, 2015년도부터 매해 새로운 버전이 추가되고 있다. 모든 브라우저에서 지원되는 ES5부터, ES2016~2020까지 출시되었다.

  • ES5 → 모든 브라우저에서 지원
  • ES2015 (ECMAScript 2015, ES6) → 거의 모든 브라우저에서 지원
  • ES2016~2020(ECMAScript 2016~2020, ES7~ES11) → 호완성이 떨어짐
    • ECMA International : 스위스 제네바에 본부를 둔, 정보 통신 시스템을 위한 국제적 표준화 기구, European Computer Manufacturers Association의 약자
    • ECMA-262 : ECMA에서 표준으로 정의한 ECMAScript 언어 규격
    • ECMAScript : ES라고도 불리며, ECMA-262에 의해 표준화된 스크립트 프로그래밍 언어의 이름
    • JavaScript는 ECMAScript와의 호환되도록 개발된다.

Babel

JavaScript Compiler로써, 호환성이 떨어지는 ECMAScript 2015 표준 이후의 JavaScript를 모든 브라우저에서 호환이 가능하도록 컴파일 해 준다. (Transpiler라고도 불림)

Babel의 Try it out 사이트에서 Transpiling을 테스트 해 볼 수 있다.

Example

// Babel Input: ES2015 arrow function
const test = () => {
  sunny = 30;
};

// Babel Output: ES5 equivalent
var test = function test() {
  sunny = 30;
};

Source

Leave a comment