NATIVE

settings_applicationsObject  >   settings_applicationsPromise  >   settings_applicationsConstructor

NATIVE

Editing
  • account_tree
  • bug_report

PromisepromisePromise(Functionexecutor)

새로운 Promise 객체의 인스턴스를 생성하는 생성자 함수이다.

설명

new 연산자 없이 호출하면 TypeError가 발생한다.

구문

형식
new Promise(executor);

매개 변수

Functionexecutor필수

미래의 동작을 약속하기 위한 구현체를 함수로 지정한다. 지정된 함수는 Promise 객체 내부적으로 사용될 정상적인 결과와 그렇지 않을 결과를 표현할 두 개의 콜백 함수를 해당 비동기적 요청에 맞게 구현되어 있어야 한다. 관례적으로 두 개의 콜백 함수의 이름을 각각 resolvereject로 사용한다. 다시 말해 함수 이름에 위배되지 않는 것이라면 원하는 이름으로 사용해도 관계없지만 주의할 점은 매개변수와 동일해야 한다.

new Promise((resolve, reject) => {
  try {
  	setTimeout(() => resolve("Successed"), 3000);
  } catch(e) {
  	reject("Failure");
  }
})

비동기 요청의 처리 결과에 따라 resolve 또는 reject 콜백 함수가 실행되고 내부적으로 새로운 Promise 객체에 포함되어 반환된다.

반환

Promisepromise

요청된 미래의 비동기적 처리 결과를 수신할 새로운 Promise 객체를 반환한다.

상속 계층 탐색

Function

  • Properties

    • arguments

      함수에 전달된 인수를 조회한다. 유사 배열로 참조되며 인덱스로 접근이 가능하다.

    • caller

      지정된 함수를 호출한 함수를 참조한다. strict 모드에서는 사용할 수 없다.

    • length

      함수에 사용 되고 있는 인수의 개수를 조회한다.

    • name

      함수 이름을 조회한다.

    • prototype

      생성자 함수(constructor function)에 의해 생성된 인스턴스(instance)에게 상속되어지는 생성자의 프로토타입을 나타낸다.

  • Methods

    • apply()

      지정된 this와 제공된 인수를 가진 배열 또는 유사 배열로 함수를 호출한다.

    • bind()

      원본 함수와 동일한 본문을 갖는 바인딩된 함수를 만든다. this 키워드가 있는 경우 실제로 자신을 참조할 수 있도록 활성화된다.

    • call()

      인수를 지정하여 함수를 호출한다.

    • toString()

      함수의 소스 코드를 반환한다.

Object

  • Methods

    • hasOwnProperty()

      객체가 특정 프로퍼티를 가지고 있는지를 블린(boolean) 값으로 반환한다.

    • isPrototypeOf()

      해당 객체가 다른 객체의 프로토타입 체인에 속한 객체인지를 체크한다.

    • propertyIsEnumerable()

      매개 변수의 속성이 열거가능(enumerable)한지 여부를 체크한다.

    • toLocaleString()

      객체를 나타내는 문자열을  작동하는 지역(locale)의 방식으로 출력이 된다.

    • toString()

      객체를 나타내는 문자열을 반환한다.

    • valueOf()

      객체의 원시(primitive) 값을 반환한다.

  • Properties

    • constructor

      객체의 생성자 함수를 참조한다.

    • __proto__

      상속된 [[Prototype]] 참조하거나 설정가능하며 일반적으로 실제 코드상에서는 잘 사용되지 않는다. ECMAScript에서 사용되지 않는 비표준이지만 최신 웹브라우저에서는 비공식적으로 지원하고 있다. 따라서 곧 표준 속성으로 지원될 확률이 높다.

      현재는 표준 사양에 명시되었다.

버전 명세

ECMAScript 2024(15th Edition)
#sec-promise-constructor

지원 웹브라우저