Node.js / NestJS

비동기 프로그래밍

Callbacks, Promises, async/await, 에러 처리, Promise.all, Promise.race

25 면접 질문·
Junior
1

NestJS에서 controller 메서드를 비동기로 만들려면 어떻게 해야 하나요?

답변

메서드 앞에 async 키워드를 추가하면 자동으로 Promise를 반환합니다. NestJS는 Promise의 resolve를 자동으로 처리하고 결과를 클라이언트에 전송합니다. 필요한 경우 async 없이 직접 Promise를 반환할 수도 있습니다. NestJS는 RxJS의 Observable도 지원합니다. async/await를 사용하면 비동기 작업(DB, 외부 API 등)의 코드가 더 읽기 쉬워집니다.

2

JavaScript에서 callback의 주요 문제는 무엇인가요?

답변

callback hell(파멸의 피라미드)은 여러 비동기 작업이 중첩될 때 발생하며, 읽고 유지보수하기 어려운 코드를 만듭니다. 들여쓰기 단계마다 복잡성이 증가합니다. Promise와 async/await는 더 선형적인 비동기 코드 작성을 가능하게 하여 이 문제를 해결하기 위해 도입되었습니다.

3

JavaScript에서 Promise란 무엇인가요?

답변

Promise는 비동기 작업의 최종 완료(또는 실패)와 그 결과 값을 나타내는 객체입니다. pending, fulfilled(성공적으로 resolve됨), rejected(에러로 실패함)의 세 가지 상태를 가질 수 있습니다. Promise는 .then()과 .catch()로 비동기 작업을 체이닝할 수 있게 해줍니다.

4

Promise가 가질 수 있는 세 가지 상태는 무엇인가요?

5

Promise에서 에러를 어떻게 처리하나요?

+22 면접 질문

다음 면접을 위해 Node.js / NestJS을 마스터하세요

모든 질문, flashcards, 기술 테스트, 코드 리뷰 연습, 면접 시뮬레이터에 접근하세요.

무료로 시작하기