# 바벨(Babel)
ES6+(ECMAScript 2015+) 코드를 하위 버전으로 변환해주는 트랜스파일러
하위 JS 문법으로 변환할 수 없는 코드는 core-js같은 third-party 폴리필을 통해 변환
Typescript 코드를 컴파일 시점에 Javascript 코드로 변환
Webpack / Rollup 등의 정적 모듈 번들러들을 통해 함께 사용 가능
# 바벨 빌드 단계
바벨은 아래와 같이 설치할 수 있다.
npm install -D @babel/core @babel/cli
파싱(Parsing)
코드를 읽고 추상 구문 트리(AST)로 변환하는 단계
AST 자료구조는 빌드 작업을 처리하기에 적합한 하나의 자료구조
바벨 코어(core)가 수행
변환(Transforming)
AST를 실제 코드로 변환하는 단계
플러그인(Plugin)이 수행