IT_susu

Promise 본문

[ javascript ]/JavaScript

Promise

고베베 2019. 11. 16. 17:56

생성자를 통해서 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