new Promise((resolve, reject)=>{})
new Promise(function(){})
Promise也是异步的结果,promise有三个阶段 pending、fulfilled、rejected。promise只有两种结果pending变为fulfilled或者rejected.状态已经发生称 resolved
基本用法:
const promise = new promise(function(resolve, reject){ if(/* 异步操作成功 */){ resolve(value) }else{ reject(error) } })
promise.then(function(value){ //success }else{ // false })
const p = new Promise((resolve, reject)=>{ //resolve(‘失败的结果‘) reject(‘失败的结果‘) }) p.then(()=>{ console.log(‘成功时调用‘) }, () =>{ console.log(‘失败时调用‘) }) console.dir(p) // 如果then写在Promise后面并且调用resolve()则不会执行第一个then
const p1 = new Promise(function (resolve, reject) { // ... }); const p2 = new Promise(function (resolve, reject) { // ... resolve(p1); })
这时p1
的状态就会传递给p2
,
Promise有原型 then、finnal、all等
链式调用等
原文:https://www.cnblogs.com/coderatian/p/14876121.html