require와 import차이

bebrain·2023년 4월 3일
0

둘 다 외부 파일이나 라이브러리를 불러올 때 사용하는 모듈키워드이다.

  • require / exports : NodeJS에서 사용되는 CommonJS 키워드
ex) const library = require("./module.js")
  • import / export : ES6(ES2015)에서 새로 도입된 키워드
ex) import library from "./module.js"

require()는 프로그램의 어느 지점에서나 호출 할 수 있지만 import()는 파일의 시작 부분에서만 실행할 수 있다 (하지만 import 전용 비동기 문법을 사용하면 파일 중간에 모듈 불러오기도 가능)

하나의 프로그램에서 두 키워드를 동시에 사용할 수 없다.
일반적으로 import()는 사용자가 필요한 모듈 부분만 선택하고 로드 할 수 있기 때문에 더 선호된다. 또한 require()보다 성능이 우수하며 메모리를 절약한다.


※ module : 어플리케이션을 이루는 각각의 파일.

대개 클래스 하나 혹은 특정한 목적을 가진 복수의 함수로 구성된 라이브러리

스크립트 하나는 모듈 하나이다.
※ 모듈 최상위 레벨의 this는 undefined,
일반 스크립트의 this는 전역 객체이다.
참조 : https://inpa.tistory.com/entry/NODE-%F0%9F%93%9A-require-%E2%9A%94%EF%B8%8F-import-CommonJs%EC%99%80-ES6-%EC%B0%A8%EC%9D%B4-1
https://ko.javascript.info/modules-intro

0개의 댓글