require vs import (CommonJs와 ES6)
기본적으로 require와 import는 모듈 키워드입니다. 외부 파일이나 라이브러리를 불러올 때 사용합니다. require는 NodeJS에서 사용되고 있는 CommonJS 키워드이고, import는 ES2015에서 새롭게 도입된 키워드입니다. 둘다 다른 파일의 코드를 불러온다는 같은 목적을 가지고 있지만, 다른 문법 구조 지니고 있습니다.
const library = require("library")
import library from "library"
최근 ES6(ES2015) 모듈 시스템인 import가 많이 사용되고 있지만, 아직까지는 import 키워드가 100% 대체되어 사용될 수 없습니다. <script> 태그를 사용하는 브라우저 환경과, NodeJS에서도 CommonJS를 기본 모듈 시스템으로 채택하고 있기 때문에, Babel과 같은 ES6 코드를 변환(transpile)해주는 도구를 사용할 수 없는 경우에는 require 키워드를 사용해야 합니다.
정리
두 키워드 모두 다른 파일의 코드를 불러온다는 동일한 목적을 가지고 있지만 다른 문법구조를 가지고 있고, Babel과 같은 ES6 코드를 변환해주는 도구 없이는 require 키워드를 사용해야 합니다.
Ref
'프론트엔드 > Javascript' 카테고리의 다른 글
사파리 비동기 함수에서 window.open 우회하기 (0) | 2023.07.02 |
---|---|
화살표 함수는 언제, 왜 써야할까? (0) | 2020.10.30 |
실행 컨텍스트 정리 (0) | 2020.10.23 |
이벤트 버블링, 캡쳐링, 위임 (0) | 2020.10.21 |
자바스크립트의 동시성을 지원하는 이벤트루프 (0) | 2020.10.21 |