NATIVE

settings_applicationsObject  >   settings_applicationsPromise  >   settings_applications[[Prototype]]

NATIVE

Editing
  • account_tree
  • bug_report

Promisepromisethen(FunctiononFulfilled, FunctiononRejected])

비동기 작업을 이행(resolve)했을 때와 거부(reject)했을 때를 위한 콜백 함수를 지정하여 사후 처리를 할 수 있다.

설명

Promise 객체에서 then() 메소드가 호출되는 시점은 이행(fulfilled)이거나 거부(rejectd)한 상태이다. 대기(pending) 상태에서 이행 또는 거부 상태로 전환되면 then() 메소드로 결과를 넘긴다.

then() 메소드는 기본적으로 새로운 Promise 객체를 반환한다. 그리고 대기 상태로 시작하고 새로운 비동기 작업이 없다면 이행한 것으로 처리된다.

then() 메소드에서 이행했을 때와 거부했을 때의 결과를 콜백 함수로 넘겨지는 데 이 콜백 함수에서 다시 반환값이 존재한다면 현재 then() 메소드가 반환한 새로운 Promise 객체의 then() 메소드의 콜백 함수에서 인수로 전달받을 수 있다.

구문

형식
promise.then(onFulfilled[, onRejected]);

매개 변수

FunctiononFulfilled필수

Promise 객체를 통해 요청된 비동기 작업이 이행되었을 때 실행할 함수를 지정한다. 비동기 요청이 이행되어 반환하는 값을 인수를 받는다.

만약에 지정된 매개변수가 함수가 아니라면 내부적으로 결과값을 전달하는 항등 함수(x=>x)로 대체된다.

FunctiononRejected선택

Promise 객체를 통해 요청된 비동기 작업이 거부되었을 때 실행할 함수를 지정한다. 비동기 요청이 거부되어 반환하는 값을 인수를 받는다.

만약에 지정된 매개변수가 함수가 아니라면 내부적으로 결과값을 전달하는 항등 함수(x=>x)로 대체된다.

반환

Promisepromise

새로운 Promise 객체를 반환한다. 현재 지정된 콜백 함수에서 반환값이 있다면 반환되는 새로운 Promise 객체의 then() 메소드에서 지정된 콜백 함수로 전달할 수 있다.

버전 명세

ECMAScript 2024(15th Edition)
#sec-promise.prototype.then

지원 웹브라우저