npm uninstall 명령어로 라이브러리를 제거했지만, package.json를 확인했을 때 dependencies 태그 안에서는 삭제되지 않았다. npm uninstall 명령은 패키지를 제거하지만, package.json파일을 업데이트 하지 않는다고 한다. 이것은 명시적으로 명령을 내려야만 package.json파일을 업데이트 할 수 있다는 뜻.. 1. 수동으로 제거 npm uninstall명령을 실행한 후에, package.json파일을 열고 해당 패키지가 여전히 나열되어 있는지 확인한다. 이후 수동으로 제거한다. 2. --save 또는 -s 옵션과 함께 사용 npm uninstall 패키지이름 --save 3. npm prune 패키지 제거 (uninstall) 실행 이후 npm prune 을..
Yarn yarn 1 : npm 보다 조금 빠른 정도 yarn 2 : yarn-berry 라고 부르는... Yarn berry 시작하기 corepack enable yarn init -2 yarn을 이용한 패키지 관리 예시 터미널에 색을 표시하는 chalk 패키지를 설치해 실행시킨다. main.js 에 chalk를 사용한 간단한 코드를 적어준다. 이때, import 문으로 라이브러리를 불러온다(ESM) import chalk from "chalk" console.log(chalk.blue("안녕하세요!")); package.json { "name": "test-yarn", "packageManager": "yarn@4.1.0", "dependencies": { "chalk": "^5.3.0" } } 기본..
- 의존성패키지 : 해당 프로젝트를 실행하는 데 꼭 필요한 라이브러리 ex) express 라이브러리로 서버를 동작하게 만든 node프로젝트는 express에 의존성이 있다고 할 수 있다. - 패키지 : Node.js에서의 패키지는 package.json으로 정의한 파일 또는 디렉터리를 의미한다. 패키지에는 package.json이 포함된다. 즉 package.json으로 정의한 코드 뭉치가 패키지이다. - 모듈 : npm install명령으로 설치한 패키지들. 이는 node_modules 에 저장된다. 즉 모든 패키지는 모듈이다. require(Common JS)나 import(ESmodule)문으로 읽을 수 있다. - package.json은 수동으로 만들 수도 있으나 npm init 명령어로 자동으..
동기 vs 비동기 프로세스의 수행 순서 보장에 대한 매커니즘 두 가지 이상의 작업의 리턴을 확인하고 다음 작업이 이루어지는지, 아닌지로 구분 동기 : 대상의 리턴시간과 결과를 반환하는 시간이 일치하는 경우. A의 종료시간과 B의 시작시간이 같다동기(synchronous)는 사전적인 의미로 '동시 발생[존재]하는' 라는 의미비동기 :리턴 값을 신경쓰지 않고 각각 동작 동기는 끝날 때까지 기다리고, 그 시간에 맞춰서 다른 작업을 수행하는 방식이고, 비동기는 작업을 해달라는 요청만 해놓고 더이상 신경쓰지 않고 있다가, 상대방이 끝나면 끝났다고 말해주는 방식이다. 블로킹 vs 논블로킹두 가지 이상의 작업의 제어권을 넘기느냐 , 넘기지 않느냐로 구분 요청받은 함수가 제어권을 언제 돌려주는지 가 핵심블로킹 (blo..
싱글스레드 자바스크립트 는 싱글스레드 언어이다 싱글스레드== 콜스택이 하나만 있다 == 한 번에 하나의 작업만 가능하다 V8엔진 자바스크립트와 *웹어셈블리 엔진 중 하나 , 자바스크립트를 바이트코드로 컴파일하고 실행하는 방식 V8엔진은 두 가지로 이루어져있다. 메모리 힙 (Memory Heap) : 메모리 할당이 이루어지는 곳 콜 스택 (call Stack) : 코드가 실행되면서 스택 프레임이 쌓이는곳 런타임 환경 런타임, 프로그램 언어가 구동되는 환경. 자바스크립트 엔진보다 더 큰 범위의 개념. 브라우저에서 자바스크립트가 실행된다면 브라우저가 런타임 환경일 것이고, node.js에서 실행된다면 런타임 환경은 Node.js 이다. 모든 브라우저는 자바스크립트 엔진 뿐 아니라 webAPI도 제공되는 자바스..