export

module.exports 와 exports의 쓰임은 같다.

하지만 이렇게 함수를 대입해서 사용될 경우에는 다르다.
module.exports 는 한가지, exports 는 여러개
그리고 두개를 같이 사용할 수 없다.
this
- 최상위 스코프의 this는 module.exports를 가리킴
- 그 외에는 브라우저의 자바스크립트와 동일
- 함수 선언문 내부의 this는 global(전역) 객체를 가리킴

require의 특성
- 제일 위에 올 필요는 없음
- require.cache에 한 번 require한 모듈에 대한 캐슁 정보가 들어있음.
- require.main은 노드 실행 시 첫 모듈을 가리킴

순환참조
노드에서 순환참조가 발생하는경우에는 무한참조를 방지하기 위해서 알아서 막아줌.
dep1이 dep2를 참조하고 dep2가 dep1을 참조하는 경우