반응형
JavaScript Promise는 비동기 작업의 최종 완료 또는 실패를 나타내는 개체입니다. 콜백을 사용하는 것보다 더 읽기 쉽고 관리하기 쉬운 방식으로 비동기 코드를 처리하는 데 사용됩니다.
promise 는 약속이라는 의미를 가집니다.
약속에는 세 가지 상태가 있습니다: 즉, 아래의 상태는 약속을 보류하였는지, 약속을 지켰는지(이행), 아니면 약속을 거절(거부) 했는지로 구분할 수 있습니다.
- Pending: 초기 상태, 이행되지 않았거나 거부되었습니다.
- Fulfilled: 작업이 성공적으로 완료되었습니다.
- Rejected: 작업이 실패했습니다.
Promise 는 .then() 및 .catch() 메서드와 함께 사용하여 비동기 작업의 결과를 처리할 수 있습니다. |
다음은 Promise를 사용하여 API에서 데이터를 로드하는 예입니다:
fetch("https://api.example.com/data")
.then(response => response.json()) //then 메서드는 프로미스가 이행된 결과를 반환합니다.
.then(data => console.log(data))
.catch(error => console.error(error)); //만일 프로미스가 거부되는 경우 그 결과를 반환합니다.
이 예에서 fetch()는 API 응답( response)으로 이행(Fulfilled)된 약속(Promise)을 반환합니다. .then() 메서드는 약속(Promise)이 이행(Fulfilled)되고 데이터를 기록할 때 호출됩니다. 약속(Promise)이 거부(Rejected)되고 오류(Error)가 기록되면 .catch() 메서드가 호출됩니다.
반응형
'자바스크립트' 카테고리의 다른 글
[간단정리js] this 키워드 (0) | 2023.01.29 |
---|---|
[간단정리 js] 실행 컨텍스트 (0) | 2023.01.29 |
[javascript] ?? : null 병합 연산자 [ES2020] (0) | 2023.01.27 |
[javascript] JSON Server 이용한 API 다루기 연습(2) - fetch로 데이터를 가져오자(GET) (0) | 2023.01.18 |
[javascript] JSON Server 이용한 API 다루기 연습(1) - 시작은 JSON Server 설치 (0) | 2023.01.18 |