Promise 和.then
//这是promise 为成功状态
window.onload=function () {
let p1=new Promise(function (resolve,reject) {
let arr={name:'make'};
resolve(arr);
});
p1.then((data)=>{console.log(data)})
};
//这是失败的状态
window.onload=function () {
let p1=new Promise(function (resolve,reject) {
let arr={name:'make2'};
reject(arr);
});
p1.then((data)=>{console.log(data)},(data)=>{console.log(data)})
};
//当resolve和reject同时存在时 则是谁先读到就返回promise的状态
//then方法内写回调函数,第一个为成功状态执行,第二个失败状态执行,可以进行链式操作 具体看下面
window.onload=function () {
let p1=new Promise(function (resolve,reject) {
let arr={name:'make2'};
reject(arr);
});
p1.then((data)=>{console.log(data)},(data)=>{console.log('第一个then');return data})
.then((res)=>{console.log('第二个then的成功')},(res)=>{console.log('这是第二个then的失败')})
};
//这样直接return默认第二个执行成功的状态 要想在第二个进行判断成功与否,需要在第一个then方法里两个回调函数各自new Promise 同上方法类似套娃