import와 require의 차이

hyeongirlife·2022년 3월 2일
0

TIL

목록 보기
72/90
post-thumbnail

프로젝트를 시작하고 서버 라우팅을 만들던 도중 불러온 모듈이 import되지 않는다는 오류메시지를 받았었다.

구글링을 통해 알게된 점은 자바스크립트에서 ES6 문법으로는 import와 export default를 사용할 수 있는데 그 이하의 버전에서는 require를 사용한다. 이 둘의 차이를 알아보자.

✍ import

JS의 ES6 문법으로 다른 패키지 안에 있는 클래스, 메소드, 변수 등의 데이터를 사용하고자 할 때 쓰는 키워드다.

import를 사용해 모듈을 가져온 뒤 만든 객체를 내보내기 위해서는 export를 사용하는데 require와는 약간 다르다.

  • 단일 객체 내보내기
export default = variable
  • 복수 객체 내보내기
export variable

👍 import 사용의 장점

  • 모듈 관리 전용 키워드(import,from,export,default)를 사용하므로 가독성이 좋다.
  • 실제로 쓰이는 부분만 불러와 사용하기 때문에 메모리를 절약할 수 있다.

✍ require

CommonJS에서 사용하는 모듈을 불러오는 키워드다.

  • 단일 객체 내보내기
    module.exports = variable

  • 모든 객체 내보내기
    exports.variable = variable

결론

import를 사용해 외부 모듈을 가져온 후 보통 단일 객체를 내보내므로 export default = 변수 를 사용하고

require를 사용해 외부 모듈을 가져올 경우 단일 객체를 내보낼 때는 module.exports를 사용해 다른 파일에서도 해당 모듈을 가져올 수 있도록 하자.

profile
머릿속에 있는 내용을 정리하기

0개의 댓글