728x90
Promise
-> 비동기 함수 호출 또는 비동기 연산이 완료되었을때, 그 다음에 와서야 처리할 함수 혹은 에러를 설정하는 모듈
function call(text, timeout) {
return new Promise((new_text, reject_time) => {
setTimeout(() => {
resolve(text);
}, timeout)
})
}
call("여보세요 나야~", 1000).then((text) =>
call(`${text} 누군가 전화함`, 1000)
).then((text) => {
console.log(`전화왔어! ${text}`);
});
-> Promise가 없었다면 비동기 시에 그냥 콘솔 값이 막 나와서 아마 콜백 지옥이 실행 될 수있다.
promise 세가지 상태
- 대기(pending) : 이행(fulfilled)이나 거절(rejected)도 안된 상태
- 이행(fulfiled) : 비동기 연산이 성공적으로 완료된 상태이므로 결과 값을 반환
- 실패(rejected) : 비동기 연산을 실패하여 에러를 반환
728x90
'항해 일지' 카테고리의 다른 글
async & await (1) | 2022.12.18 |
---|---|
호이스팅? Hoisting? (0) | 2022.12.18 |
CORS 란? (0) | 2022.12.18 |
정규화 (0) | 2022.12.18 |
Array 와 Linked-List 차이 (0) | 2022.12.18 |