자바스크립트 웹 개발 기본기비동기 실행과 Promise 객체Promise Chaining이란?

Q

콜백에서 프로미스 객체를 리턴, then메소드가 리턴했던 프로미스 객체?

조회 340

좋아요 0

2024년 1월 24일()

댓글 2

2024년 1월 29일
제가 이해한 바로는 then메소드의 리턴값은 무조건 promise객체이다
2024년 1월 29일
제가 이해한 바로는 1. then 메소드의 리턴값은 무조건 promise 객체가 된다, 2. 콜백 함수의 리턴값은 promise 객체가 아닐수도 있다, 이 두 가지 이유 때문에 then 메소드가 리턴하는 프로미스 객체와 콜백 함수의 리턴값을 분리해서 말씀하신 것 같습니다. 내부 콜백 함수가 promise 객체를 리턴하는 메소드일 수도 있지만(예: 강의에 나왔던 text 메소드) 아닐 수도 있기 때문에 promise 객체를 리턴하는 콜백 함수의 경우 결과적으로 then 메소드가 반환하는 promise 객체와 동일한 상태값, 결과값을 가지게 되고 / 다른 값을 리턴하는 콜백의 경우 then메소드가 반환하는 상태값은 일단 fulfilled가 되고 (콜백의 상태값은 없으므로) 콜백의 결과값을 then 메소드의 promise 객체가 작업 성공 결과로 가지게 되는 거라고 이해했습니다. 그래서 아마 then메소드가 리턴한(했던?) promise 객체라는 것은 then메소드가 최종적으로 리턴하게 되는 값(프로미스 객체)을 말하게 되는 것 같아요. ~했던 이라고 표현하셨다면 일단 pending 상태로 프로미스 객체가 작업 결과를 기다리고 있기 때문이 아닐까 합니다..

(주) 코드잇

대표강영훈

개인정보보호책임자강영훈

이메일support@codeit.kr

사업자 번호313-86-00797

통신판매업제 2019-서울중구-1034 호

주소서울특별시 중구 청계천로 100 시그니쳐타워 동관 10층 코드잇