IT_susu
Promise 본문
생성자를 통해서 promise를 만들 수 있다,
파라미터로 excutor라는 함수를 받는다.
excutor 함수는 resolve와 reject함수를 인자로 받는다.
new Promise((resolve, reject) => {});
생성자 함수로 promise 객체를 만드는 순간 pending상태가 된다.
resolve함수가 실행되면 fulfilled 상태
reject함수가 실행되면 reject상태
사용방법1
const p = new Promise((resolve, reject) => {
setTimeout(() => {
resolve();
}, 1000);
});
p.then(() => {
console.log('1000ms 후에 fulfilled가 실행됩니다.');
});
사용방법2
then을 설정하는 시점을 정확히 하고, 함수의 실행과 동시에 프로미스 객체를 만들면서 pending이 시작하도록 하기 위해 프로미스 객체를 생성하면서 리턴하는 함수를 만들어 사용한다.
function p() => {
return new Promise((resolve, reject) => {
setTimeout(() => {
reject();
}, 1000);
})
}
p()
.then(() => {
console.log('1000ms 후에 fulfilled가 실행됩니다.');
})
.catch(() => {
console.log('1000ms 후에 rejected가 실행됩니다.');
});
promise가 없을 경우 비동기 처리
콜백패턴. 그래서 promise chaning 기법이 우수하다는 소리..
promise.all
promise.racr
'[ javascript ] > JavaScript' 카테고리의 다른 글
async await (0) | 2019.11.16 |
---|---|
정규표현식 (0) | 2019.09.17 |
AJAX - 비동기로 작업하기(callBack, Promise, async-await) (0) | 2019.09.13 |
window 객체 - BOM (0) | 2019.09.12 |
Ajax (0) | 2019.08.09 |
Comments