1.基本语法
new Promise((resolve, reject) => {
setTimeout(()=>{/*resolve('hello world')*/
reject('error')},1000)
}).then(
(data)=>{console.log(data)}
).catch((err)=>{console.log(err)})
2.promise的三种状态
1.pending:等待状态
2.fulfill:满足状态
3.reject:拒绝状态
3.第二种写法
<script>
new Promise((resolve,reject)=>{
setTimeout(()=>{
resolve('haha')
})
}).then(data=>{console.log(data)},err=>{console.log(err)})
</script>
4.promise链式调用
<script>
new Promise((resolve,reject)=>{
resolve('first')
}).then(data=>{console.log(data,'第一次调用') ;
return new Promise(
(resolve,reject)=>{
resolve(data+'2')
})
}).then(
data=>{console.log(data,'第二次调用');
return Promise.resolve(data+'3');
}
).then(data=>{
console.log(data,'第三次调用');
return Promise.resolve(data+'4')
}).then(data=>{
console.log(data,'省略式写法');
return data+'5'
}).then(data=>{
console.log(data)
})
</script>