new Promise
- promise를 만들어서 사용하는 법
- 보통 함수 안에서 작동하게 끔 사용(재사용 가능)
resolve
function job1() {
return new Promise(function(resolve, reject){
setTimeout(() => {
resolve('resolved ok!')
}, 500)
})
}
job1().then(function(data){
console.log(data)
})
네이스틱 방식
job1().then(function(data){
console.log(data)
job2().then(function(data){
console.log(data)
})
})
체이닝 방식
job1()
.then(function(data) {
console.log(data)
return job2()
})
.then(function(data) {
console.log(data)
})
reject
function job1() {
return new Promise(function(resolve, reject){
setTimeout(() => {
reject('fail')
}, 500)
})
}
체이닝 방식
function job1() {
return new Promise(function(resolve, reject){
setTimeout(() => {
reject('fail!!')
}, 1000)
})
}
function job2() {
return new Promise(function(resolve, reject){
setTimeout(() => {
resolve('resolved2 ok!')
}, 500)
})
}
job1()
.then(function(data) {
console.log(data)
return job2()
})
.then(function(data) {
console.log(data)
})
.catch(function(error) {
console.log(error)
return Promise.reject()
})
catch
, return Promise.reject()