이재호
promise 본문
프로미스란 내용이 실행은 되었지만 결과를 아직 반환하지 않은 객체
then 을 붙히면 결과를 반환함
resolve(성공리턴값 ) : then으로 연결
reject(실패리턴값) : catch로 연결
finally 는 무조건 실행
const promise = new Promise((resolve, reject)=>{
setTimeOut(()=>{
resolve()
}, 1000)
})
promise.then(()=>{
console.log('a')
})
const codition = true;
const promise = new Promise((resolve, reject)=>{
if(codition){
resolve('성공')
} else {
reject('실패')
}
})
promise
.then((messeage)=>{
console.log(messeage)
) catch((e)=>{
console.log(e)
}){
}
콜백은 콜백헬 처럼 코드가 아주 지저분해지지만 promise는 분리가 되어있기때문에 코드 가독성도 좋습니다.
promise all : 여러개의 프로미스를 한번의 실행가능하게 하는데
단점은 프로미스중 하나라도 실패하면 다른 프로미스가 모두 성공해서 전부 catch로 갑니다.
promise all settled : 여러개의 프로미스를 한번의 실행가능하게 하는데 promise all settled는 실패한것만 추려냅니다.
'프론트엔드 > 자바스크립트' 카테고리의 다른 글
호출스택과 스코프체인 (0) | 2023.03.15 |
---|---|
클로저 예제 (0) | 2023.02.18 |
XMLHttpRequest(XHR) VS Fetch VS Axios (0) | 2023.02.17 |
간단한 스코어 게임 만들기 (0) | 2023.02.15 |
간단한 폼 리스트 만들기 (0) | 2023.02.14 |