>  기사  >  웹 프론트엔드  >  Promise 객체의 then 메소드를 사용하는 방법

Promise 객체의 then 메소드를 사용하는 방법

王林
王林원래의
2024-02-18 12:33:061191검색

Promise 객체의 then 메소드를 사용하는 방법

Promise의 then 메소드는 Promise 객체의 비동기 작업을 처리하는 데 사용됩니다. JS에서 Promise는 비동기 작업을 처리하는 데 일반적으로 사용되는 방법으로 비동기 작업을 처리하는 데 더 편리하고 명확한 구문을 제공합니다.

then 메소드의 기본 사용법은 다음과 같습니다.

promise.then(onFulfilled, onRejected);

그 중 onFulfilled는 Promise가 성공했을 때의 콜백 함수로, Promise 객체의 상태가 Fulfilled(완료)로 변경되었을 때 호출되는 콜백입니다. Promise가 실패하면 Promise 객체의 상태가 Rejected로 변경될 때 호출됩니다.

구체적으로 Promise 객체의 상태가 Fulfilled인 경우 onFulfilled 함수가 호출되고 Promise 내부의 값이 매개변수로 전달됩니다. Promise 객체의 상태가 Rejected이면 onRejected 함수가 호출되고 Promise 내부의 오류 정보가 매개변수로 전달됩니다.

다음은 Promise의 then 메소드 사용을 보여주는 간단한 샘플 코드입니다.

function fetchData() {
  return new Promise((resolve, reject) => {
    // 模拟异步请求
    setTimeout(() => {
      const data = 'Hello World!';
      resolve(data); // 成功时调用resolve,传递数据
      // reject('Error occurred'); // 失败时调用reject,传递错误信息
    }, 1000);
  });
}

fetchData()
  .then((data) => {
    console.log('成功:', data);
  })
  .catch((error) => {
    console.error('失败:', error);
  });

위의 예에서는 Promise 객체를 반환하는 fetchData 함수를 정의했습니다. Promise 생성자에서는 비동기 요청을 시뮬레이션하고 1초 후에 데이터 또는 오류를 반환합니다. 해결 또는 거부를 호출하여 약속의 상태를 변경합니다.

메인 프로그램에서는 fetchData 함수를 호출하고 then 메소드를 통해 성공에 대한 콜백 함수를 catch 메소드를 통해 실패에 대한 콜백 함수를 등록합니다. fetchData 함수의 비동기 작업이 완료되면 반환된 결과에 따라 해당 콜백 함수가 호출됩니다.

then 메소드는 새로운 Promise 객체를 반환한다는 점에 유의해야 합니다. 체인에서 then 메서드를 호출하면 여러 비동기 작업을 순차적으로 처리할 수 있습니다.

간단히 말하면 Promise의 then 메소드는 Promise 객체의 성공 및 실패 상태를 처리하는 데 사용되는 콜백 함수입니다. 비동기 작업을 처리하는 편리한 방법을 제공하고 코드를 더 읽기 쉽게 만듭니다.

위 내용은 Promise 객체의 then 메소드를 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.