Math 는 생성자 함수가 아니다. 표준 빌트인 객체인 Math 정적 프로퍼티와 정적 메소드만 제공한다. Date 는 빌트인 객체이면서 동시에 생성자 함수다.
베이직 과정은 개발자에게 중요한 역량인 문제 해결력이 무엇인지 경험할 수 있도록 만들어진 과정이다. 2주 동안 문제를 정의하고 설계하는 연습을 하며, 문제를 해결하며 성장할 수 있는 기회를 제공한다.
순환 종속성은 두 클래스가 각자에 의존할 때 발생한다. Nest.js 에서는 모듈과 모듈사이 혹은 프로바이더와 프로바이더 사이에서 발생할 수 있다.
표준 빌트인 객체인 Number 객체는 생성자 함수 객체다. 따라서 new 연산자와 함께 호출하여 Number 인스턴스를 생성할 수 있다.
ES6 이전까지 자바스크립트의 함수는 별다른 구분 없이 사용되었다. 즉, ES6 이전의 모든 함수는 일반 함수로서 호출할 수 있으면서, 생성자 함수로서 호출할 수 있다. ES6 에서는 함수를 사용 목적에 따라 세가지 종류로 명확히 구분한다.
자바스크립트는 클래스가 필요하지 않은 프로토타입 기반 객체지향 언어이다. ES6 에서는 클래스가 도입되었으며, 클래스 기반 객체지향 프로그래밍 언어와 흡사한 새로운 객체 생성 메커니즘을 제공한다.
providers 는 Nest 의 기본 개념이다. services, respositories, factories, helpers 등이 모두 providers 이다. 주요 아이디어는 종속성으로 주입될 수 있다는 것이다.
Nest.js의 요청 생명주기는 요청 → 미들웨어 → 가드 → 인터셉터 → 파이프 → 인터셉터 → 예외 필터 → 응답 순으로 이루어진다.
클로저는 함수와 그 함수가 선언된 렉시컬 환경과의 조합이다. 외부 함수보다 중첩 함수가 더 오래 유지되는 경우 중첩 함수는 이미 생명 주기가 종료된 외부 함수의 변수를 참조할 수 있다. 이러한 중첩 함수를 클로저라고 부른다.
실행 컨텍스트는 자바스크립트의 동작 원리를 담고 있는 핵심 개념이다. 실행 컨텍스트를 바르게 이해하면 자바스크립트가 스코프를 기반으로 식별자와 식별자에 바인딩된 값을 관리하는 방식과 호이스팅이 발생하는 이유, 클로저의 동작 방식 등을 이해할 수 있다.
객체는 상태(State)를 나타내는 프로퍼티와 동작(behavior)를 나타내는 메서드를 하나의 논리적인 단위로 묶은 복합적인 자료구조다. 메서드는 자신이 속한 객체의 상태, 즉 프로퍼티를 참조하고 변경할 수 있어야 한다.
jobs 의 모든 작업의 요청부터 종료까지 걸린 시간의 평균을 줄이려면 모든 작업의 요청부터 종료까지 걸린 시간을 줄여야 한다.우선 작업 소요시간은 줄일 수 없다. 따라서, 요청되는 시점 부터 요청이 처리되기 시작까지의 시간, 즉 대기시간을 최소화 해야 한다.
ES5부터 strict mode가 추가되었다. 이는 잠재적인 오류를 발생시킬 수 있는 코드들에 명시적인 에러를 발생시킨다. 전역의 선두 또는 함수 몸체의 선두에 'use strict';를 추가한다.