웹 브라우저가 아닌 환경에서도 Javascript 코드를 실행시켜주는 자바스크립트의 런타임, 실행 환경
즉 Node.js는 Javascript 코드의 구동기
단순한 상호작용만 개발할 수 있었던 언어인 Javascript를 범용적으로 사용할 수 있도록 도와주는 Javascript의 실행 환경, 즉 런타입이며 우리가 배우고자 하는 React 또한 Node.js 기반으로 동작
원래 브라우저 상에서 Javascript가 실행되었는데, 이것을 Node.js 환경에서 실행하고자 함
npm init을 통해 node.js 패키지를 생성
index.js 파일을 생성해서, 콘솔창에 node index.js를 치면 실행

경로가 복잡해지면 package.json 폴더에서 sciprts를 수정하면 됨
“start” : “node src/index.js”을 추가하면, npm run start 명령어로 src폴더의 index.js을 실행할 수 있음


ES 모듈 시스템을 사용하려면, package.json 파일에서 “type” : “module”을 추가해줘함. 추가하면 Common JS를 사용하지 못해서 npm run start를 하면 오류가 발생

내보내고자 하는 모듈에서 export = {}안에 원하는 것을 담음
받고자 하는 모듈에서 import { } 경로를 사용. ES 모듈 시스템을 사용할 때는 확장자까지 꼭 적어야 함

함수 앞에 export 키워드를 붙여도 똑같이 동작

export default를 붙여서 default로 내보낼 수 있음

동일한 경로에서 불러오는 import 문은 합칠 수 있음


npmjs.com에서 원하는 라이브러리를 찾고. npm i를 사용해서 설치

설치하면 package.json 파일에 dependencies에 randomcolor의 버전이 추가되고, node_modules, package-lock.json 파일이 추가됨
설치한 randomcolor 라이브러리를 import로 불러옴
실행해 보면 아래와 같이 hex값을 랜덤으로 출력

package-lock.json, node_modules 파일이 삭제되면, package.json의 dependencies에 있는 정보로 npm i 명령어를 통해 모든 라이브러리를 다시 다운받을 수 있음
따라서 node_modules 파일을 굳이 git이나 다른 것을 통해 공유하지 않음