본문 바로가기
JavaScript/모던 자바스크립트 딥다이브

[JS] Babel과 Webpack

by 김춘삼씨의 고양이 2024. 10. 17.

📌 ES6 모듈보다 별도의 모듈 로더를 사용하는 이유

  • IE를 포함한 구형 브라우저는 ESM(ES6 모듈)을 지원하지 않음
  • ESM을 사용하더라도 트랜스파일링이나 번들링이 필요함
  • ESM이 아직 지원하지 않는 기능(bar import)이 있으며, 몇 가지 이슈가 존재함

 

📌 Babel

  • Babel: ES6+/ES.NEXT로 구현된 최신 사양의 소스코드를 IE 같은 구형 브라우저에서도 동작하는 ES5 사양의 소스코드로 변환해 주는 트랜스파일러

 

📌 Webpack

  • Webpack: 의존 관계에 있는 자바스크립트, CSS, 이미지 등의 리소스들을 하나(또는 여러 개)의 파일로 번들링하는 모듈 번들러
  • Webpack을 사용하면 의존 모듈이 하나의 파일로 번들링되므로 별도의 모듈 로더가 필요 없음
  • 여러 개의 자바스크립트 파일을 하나로 번들링해 HTML 파일에서 script 태그로 여러 개의 자바스크립트 파일을 하나하나 로드해야 하는 번거로움이 사라짐

 
 

 

참고문헌 및 출처 : 모던 자바스크립트 Deep Dive (이웅모)

'JavaScript > 모던 자바스크립트 딥다이브' 카테고리의 다른 글

[JS] 모듈  (0) 2024.10.16
[JS] 에러 처리  (0) 2024.10.13
[JS] 제너레이터와 async / await  (0) 2024.10.13
[JS] 프로미스  (2) 2024.09.30
[JS] REST API  (0) 2024.09.25

댓글