1. 바빌론
: 최신 JavaScript 코드를 이전 표준을 준수하는 코드로 변환하는 JavaScript 컴파일러입니다.
(*컴파일: 한 언어로 작성된 컴퓨터 프로그램을 다른 언어로 된 동등한 프로그램으로 변환하는 과정)
: 최신 버전의 자바스크립트를 실행하지 않는 구버전의 웹브라우저를 처리하기 위해 사용합니다.
: ES6 코드를 ES5 코드로 변환하고, React의 JSX 문법, TypeScript, 코드 압축 및 제안을 처리합니다.
*바벨이 필요한 경우*
: 새 구문
– const, 하자
-확산 연산자
– 화살표 기능
– 수업
-파괴
2. 웹 패키지
: 빌드별로 여러 파일을 하나로 합치는 자바스크립트 모듈 번들러입니다.
(빌드: 소스코드 파일을 실행 가능한 소프트웨어 제품으로 만드는 과정으로 컴파일, 배포 등의 과정을 포함)
참고: 웹 페이지를 표시하기 위해 서버에서 개별적으로 수많은 파일을 요청하는 대신 모듈을 하나의 파일로 묶어 배포함으로써 사용자 경험이 크게 향상됩니다.
3. 폴리필
: 브라우저가 이해할 수 없는 코드, 브라우저가 이해할 수 있는 코드 제공
: babel이 ES6에서 ES5로 변환 가능한 것만 변환한다면, ES5에서 변환할 수 있는 것이 없으면 polyfill이 사용됩니다.
: 크로스 브라우징 문제를 해결하는 기술
*화이버필이 필요한 경우*
: ES5 Globals에 존재하지 않는 객체 및 메소드는 컴파일할 수 없습니다.
– 새로운 객체(Promise, IntersectionObserver, Set, Map…)
– 기존 객체의 새로운 메서드(Array.prototype.includes, Object.entries …)
– 새로운 기능(가져오기)