변수 var - 함수 레벨 스코프let, const - 블록 레벨 스코프그냥 let 쓰자변수 콘솔에 출력함수 작성법 함수 선언식함수 표현식은 다음과 같다 함수 표현식이란, 실행 흐름이 해당 부분에 도달했을 때 함수가 생성되고 사용 가능해지는 함수 표현법을 말한다. 자바
인터페이스에 함수 정의하고 객체로 만드는 법https://yamoo9.gitbook.io/typescript/interface/object-literal 예제에 따라서 인터페이스 안에 함수 이름 안써준 것도 있었는데, 발전 과제에서는 함수 이름을 꼭 정의해주었
Node.js는 싱글 스레드이기 때문에 event 기반 비동기 방식으로 일을 처리한다. event는 callback function, Promise, Async/Await 세 가지 방식으로 처리할 수 있다 비동기 처리 방식 callback Callback func
Http - 하이퍼텍스트 문서를 주고받기 위한 프로토콜(규칙)스프링 강의 들으면서 노션에 정리한 내용이랑 스프링 강의 교재 참고하셈https://www.notion.so/9-HTTP-f888ef87366741faa53bb610de254da9 REST - 서버의
yarn 패키지를 사용하였다 따라서 미리 yarn을 설치해야됨(npm install yarn -g) 기본 설정 express 프로젝트를 할 폴더를 만든다 폴더 안에서 yarn --init package.json 파일 생성 yarn add express, yarn a
폴더 구조는 다음과 같다srcindex.tsapiindex.tsblog.tsuser.tssrc/index.ts -> src/api/index.ts -> src/api/blog.ts 순서로 실행된다src/api/index.ts이렇게했을 경우 라우터가 많아지면 관리하기가
프로젝트 세팅까지 마쳤으면 이제 mvc모델(스프링에서는 이렇게 부르는데 node.js는 다른걸로 알고있음)로 어플리케이션을 설계해야 한다. 설계할 때 크게 3가지 계층으로 구현한다 3-layer-architecture controller - req, res를 여기서
웬만하면 모든 api는 아래 순서로 구현하는게 편하다 > DTO -> service -> controller -> router UPDATE update는 model의 findByIdAndUpdate() 메소드를 사용해주면 된다 update의 경우 각각의 필드가 요
기억해!!!!!! loader/db.ts에서 connectDB 안에 컬렉션이름.createCollection()할 때 putty에서 서버 돌리면 mongodb에서 컬렉션이 안만들어짐 먼저 local 환경에서 서버 한번 띄워야지 mongodb compass에 colle
Middleware 요청과 응답의 중간(middle)에서 쓰이는 것 Authentication 무상태 프로토콜 - 모든 요청이 상호 독립적, req&res 사이에 데이터 보존 안함, 다른 서버에서 요청이 들어와도 문제 없음 -> 로그인을 했더라도 해당 로그인을 했
movie 페이지에 movie 댓글을 달 수 있도록 설정해보겠다Movie 객체 안에 MovieComment가 배열 형태로 들어감MovieResponseDto.tsMovieController.tscontroller는 별거 없다MovieService.tspopulate로
파일 업로드 http body에 json 사용해서 메시지 보내는 경우 Content-Type : application/json 파일 전송하는 경우 Content-Type : multipart/form-data 파일 업로드 하기 전에 AWS Console -> 우
라이브러리 Dayjs 날짜 라이브러리. js에서도 날짜를 제공하지만 브라우저마다 파싱하는 방식이 달라서 라이브러리를 사용하는 것이 좋음 husky git hooks를 쉽게 적용할 수 있음(커밋하기 전에 어떤 일-테스트 등-과 같은 명령을 강요) helmet 슬랙
yarn init yarn add express dotenv express-validator mongoose +) npm i로 설정준 게 Dependency에 들어감 yarn add -D @types/node @types/express @types/mongoose no