브라우저 밖에서 쓸 수 있는 자바스크립트 - 브라우저와 JS를 분리
자바스크립트 런타임
브라우저를 가지고 있는 모든 컴퓨터는 자바스크립트가 설치되어 있다. 처음에는 브라우저(웹)에서만 자바스크립트를 사용할 수 있었지만, 브라우저 밖에서 자바스크립트를 사용할 수 있게 컴파일 해주는 NodeJS
가 나온 뒤로는 다양한 곳에서 자바스크립트를 사용할 수 있게 되었다. NodeJS 덕분에 React Native
,Electron
등을 활용해 모바일 어플리케이션이나 Chrome, Slack 같은 데스크탑 앱을 만들 수 있다.
프로젝트 혹은 파일에 대한 설명이 적혀있는 파일이다. npm init
을 실행하면 해당 파일이 생성된다.
{
"name": "wetube",
"version": "1.0.0",
"description": "THe best way to watch a videos.",
"scripts": {
"win": "node index.js"
},
"repository": {
"type": "git",
"url": "git+https://github.com/JY-Ahn/wetube-reloaded.git"
},
"author": "Junyong Ahn(junyongsw92@gmail.com)",
"license": "MIT",
"bugs": {
"url": "https://github.com/JY-Ahn/wetube-reloaded/issues"
},
"homepage": "https://github.com/JY-Ahn/wetube-reloaded#readme",
"dependencies": {
"express": "^4.17.1"
}
}
scripts: npm run win 을 실행하면 node index.js
명령이 실행된다
dependencies: 해당 패키지(모듈)를 실행하기 위해 필요한 패키지 목록. npm install express
를 이미 실행했기 때문에 express가 dependencies에 추가되었다.
NodeJS를 런타임 환경으로 돌아가는 다양한 자바스크립트 모듈(패키지)들을 다운로드 하고 관리할 수 있는 패키지 매니저이다.
npm install express
npm 을 사용해 express를 설치하면, 다음과 같은 메세지가 출력된다. express@4.17.1 added 50 packages from 37 contributors and audited 50 packages in 2.215s
분명 express
모듈 하나만 설치했을 뿐인데, 50개의 패키지가 함께 설치됐다고 나온다. express 패키지의 package.json
에 50개의 패키지가 dependencies로 명명되어 있기 때문이다.
아래에서 node_modules폴더에는 npm으로 설치한 모든 패키지가 들어가있다. npm install express
를 실행하면, express의 package.json파일에 들어가있는 dependencies chain 을 따라 모든 패키지가 자동으로 설치된다.