require 와 import 의 차이

고먐미·2023년 4월 4일
0

JavaScript에서 외부 모듈 가져오기

  • JavaScript 에서 외부 모듈을 가져오는 방법에는 require를 쓰거나 import 쓰는 방식이 있습니다.
  • 이 둘은 외부 모듈을 가져오는 방법이라는 것이 똑같지만 사용하는 문법이나 동작 방식이 다릅니다.

require

  • CommonJS 방식으로 모듈을 가져옵니다.
  • 동기적으로 작동하기 때문에 모듈이 완전히 로드될 때까지 코드 실행을 차단합니다.
  • 가지고 온 모듈을 객체로 반환합니다.
  • 가지고 온 모듈이 객체로 반환되므로 해당 모듈의 함수와 변수에 접근하기 위해서는 해당 객체의 속성으로 접근해야 합니다.
  • 필요한 모듈만 선택적으로 로드할 수 없습니다.

import

  • ES6에서 도입된 모듈 로딩 방식입니다.
  • 비동기적으로 작동하기 때문에 모듈이 로딩되는 동안 코드가 실행될 수 있습니다.
  • 가지고 온 모듈에서 지정한 변수나 함수를 바로 사용할 수 있게 해줍니다.
  • 가지고 온 모듈의 모든 변수와 함수를 현재 파일의 스코프 내에 바로 가져올 수 있습니다.
  • 필요한 모듈만 선택적으로 로드할 수 있기 때문에 메모리를 절약할 수 있습니다.

따라서, import는 require와 달리 가져온 모듈에서 사용할 변수나 함수를 선택적으로 가져올 수 있고, 그렇기 때문에 메모리도 절약할 수 있습니다.


require와 import의 차이점을 설명해주세요.
import는 필요한 모듈만 선택적으로 로드할 수 있고, require는 불가능합니다.
그렇기 때문에 require에 비해 import 는 메모리를 절약할 수 있습니다.
하지만 babel과 같이 ES6 코드를 변환해주는 도구를 사용할 수 없는 경우에는 require를 사용해야 합니다.

profile
개념을 이해하고 다른사람에게도 알려줄 수 있는 개발자가 되고 싶어요..

0개의 댓글