Promise.resolve() 的应用
function getP(){ if(false){ return new Promise(resolve=>{ resolve('成功') }) }else{ return 0; } } getP().then(value=>{ console.log(value) })
强行调用getP() 导致类型改变为promise类型 所以false输出直接为0会报错
代码修改如下
function getP(){ if(false){ return new Promise(resolve=>{ resolve('成功') }) }else{ return Promise.resolve("失败") } } getP().then(value=>{ console.log(value) })
true返回
成功
false返回
失败
以getP().then()的方式调用会把函数类型改变为Promise类型 仅作为参考另一个调用类型console.log (getP());
function getP(){ if(true){ return new Promise(resolve=>{ resolve('成功') }) }else{ return "失败" } } // getP().then(value=>{ // console.log(value) // }) console.log (getP());
true返回
Promise { '成功' }
false 返回
失败

浙公网安备 33010602011771号