⊗jsSpPrmEx 163 of 294 menu

JavaScript의 프로미스에서 발생하는 예외 상황

이제 프로미스 내부에서 발생하는 예외 상황을 처리하는 방법을 배워봅시다. 이러한 상황이 발생하면 프로미스의 함수에 자동으로 전달되는 두 번째 매개변수인 특별한 reject 함수를 사용하여 프로미스를 거부해야 합니다:

let promise = new Promise(function(resolve, reject) { setTimeout(function() { ... }, 3000); });

프로미스 함수 내부에서는 모든 것이 정상적으로 진행되면 resolve를 호출해야 하고, 예외 상황이 발생하면 reject를 호출해야 합니다:

let promise = new Promise(function(resolve, reject) { setTimeout(function() { let isError = false; if (!isError) { resolve([1, 2, 3, 4, 5]); // 프로미스 데이터 } else { reject('error in promise'); // 당신의 에러 텍스트 } }, 3000); });

그런 다음 then 메서드에 매개변수로 하나가 아닌 두 개의 함수를 전달해야 합니다: 첫 번째는 프로미스가 정상적으로 실행되었을 때(해결되었을 때) 작동하고, 두 번째는 오류와 함께 실행되었을 때(거부되었을 때) 작동합니다:

promise.then( function(result) { console.log(result); // 프로미스 결과를 출력합니다 }, function(error) { console.log(error); // 에러 텍스트를 출력합니다 } );

일반적으로 위의 코드는 다음과 같이 더 간결하게 작성합니다:

promise.then(function(result) { console.log(result); // 프로미스 결과를 출력합니다 }, function(error) { console.log(error); // 에러 텍스트를 출력합니다 });

0부터 5까지의 난수를 생성하는 비동기 코드를 만드세요. 이 모든 것을 프로미스로 감싸세요. 프로미스가 생성된 숫자로 1을 나눈 결과를 반환하도록 하세요. 0으로 나누기가 발생하면 프로미스가 오류와 함께 실행되고, 다른 모든 경우에는 성공적으로 실행되도록 하세요.

한국어
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақКыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
우리는 웹사이트 운영, 분석 및 개인화를 위해 쿠키를 사용합니다. 데이터 처리는 개인정보 처리방침에 따라 이루어집니다.
모두 수락 설정 거부