
비동기 프로그래밍
Callbacks, Promises, async/await, 에러 처리, Promise.all, Promise.race
25 면접 질문·
Junior
1NestJS에서 controller 메서드를 비동기로 만들려면 어떻게 해야 하나요?
1
NestJS에서 controller 메서드를 비동기로 만들려면 어떻게 해야 하나요?
답변
메서드 앞에 async 키워드를 추가하면 자동으로 Promise를 반환합니다. NestJS는 Promise의 resolve를 자동으로 처리하고 결과를 클라이언트에 전송합니다. 필요한 경우 async 없이 직접 Promise를 반환할 수도 있습니다. NestJS는 RxJS의 Observable도 지원합니다. async/await를 사용하면 비동기 작업(DB, 외부 API 등)의 코드가 더 읽기 쉬워집니다.
2JavaScript에서 callback의 주요 문제는 무엇인가요?
2
JavaScript에서 callback의 주요 문제는 무엇인가요?
답변
callback hell(파멸의 피라미드)은 여러 비동기 작업이 중첩될 때 발생하며, 읽고 유지보수하기 어려운 코드를 만듭니다. 들여쓰기 단계마다 복잡성이 증가합니다. Promise와 async/await는 더 선형적인 비동기 코드 작성을 가능하게 하여 이 문제를 해결하기 위해 도입되었습니다.
3JavaScript에서 Promise란 무엇인가요?
3
JavaScript에서 Promise란 무엇인가요?
답변
Promise는 비동기 작업의 최종 완료(또는 실패)와 그 결과 값을 나타내는 객체입니다. pending, fulfilled(성공적으로 resolve됨), rejected(에러로 실패함)의 세 가지 상태를 가질 수 있습니다. Promise는 .then()과 .catch()로 비동기 작업을 체이닝할 수 있게 해줍니다.
4
Promise가 가질 수 있는 세 가지 상태는 무엇인가요?
5
Promise에서 에러를 어떻게 처리하나요?
+22 면접 질문
기타 Node.js / NestJS 면접 주제
Node.js 기초
Junior
20개 질문Node.js 코어 API
Junior
25개 질문Express.js 기초
Junior
20개 질문NestJS 기초
Junior
23개 질문REST API 설계
Junior
20개 질문검증과 DTO
Junior
20개 질문API 문서화 및 계약
Junior
20개 질문에러 처리
Junior
20개 질문단위 테스트
Junior
20개 질문작업 스케줄링
Junior
15개 질문NestJS 모듈과 DI
Mid-Level
20개 질문구성 및 환경 관리
Mid-Level
20개 질문JWT 인증
Mid-Level
25개 질문인가 및 RBAC
Mid-Level
20개 질문TypeORM을 사용한 데이터베이스
Mid-Level
30개 질문Prisma ORM
Mid-Level
25개 질문미들웨어와 인터셉터
Mid-Level
20개 질문파일 업로드
Mid-Level
15개 질문WebSockets
Mid-Level
20개 질문NestJS를 사용한 GraphQL
Mid-Level
25개 질문엔드투엔드 테스트
Mid-Level
20개 질문Redis를 사용한 캐싱
Mid-Level
20개 질문Bull을 사용한 큐
Mid-Level
20개 질문DevOps, Logging, CI/CD
Mid-Level
25개 질문Docker 및 컨테이너화
Mid-Level
25개 질문마이크로서비스
Senior
30개 질문보안 모범 사례
Senior
25개 질문성능 및 클라우드 배포
Senior
30개 질문