Javascript

JS require와 import의 차이?

SeanK 2021. 12. 3. 21:59

 

 

자바스크립트를 공부한지 어연 2개월 째...

 

근본없는 언어란 참으로 매력적이면서 난감하다...

 

뭔가 다양한 듯 싶으면서도 버전마다 바뀌는 문법을 보며, 

 

역시 no 근본..! 을 외치게 된다. 

 

그러고 보니 개발자들의 모국어도...읍읍

 

 

모듈을 옮겨오는 require와 import를 바라보며 필자는 동일한 감정을 느끼게 된다.

 

 

The difference between require and import

 

 

 

두 메소드의 차이는 위의 사진으로 한방에 정리된다. 

 

여기서 CommonJS는 nodeJS라고 생각하면 된다. 

 

즉 require메소드는 CommonJS에서 모듈을 들고올 때 사용하는 메소드이고 

import메소드는 ES6문법에서 모듈을 들고올 때 사용하는 메소드라는 차이점이 있다. 

 

 

Require

  • CommonJS 문법
  • 원하는 부분만 따로 떼어 들고올 수 없다.
  • 동기적으로 들고온다.

 

Import

  • ES6 문법
  • 원하는 부분만 따로 떼어 들고올 수 있다. 
  • 비동기적으로 들고온다. 
  • require와 동일하게 사용되기 위해 babel을 이용해 compile 한다.

 

음.. 이렇게만 설명하니 뭔가 이해가 안되는 듯 하여, 

 

여기저기 찾아보니 개발자 형님들이 한줄로 딱 정리를 아래와 같이 해놓았다. 

 

Require === Old School

 

그렇다. require는 구리다고 한다.