promise的执行流程?
//写法一,直接new一个promise,执行结果是1234都能打印出,但是并没有1秒的延迟 let p=new Promise(resolve=>{ setTimeout(()=>resolve(),1000) }); p .then(()=>console.log(1)) .then(()=>console.log(2)) .then(()=>console.log(3)) .then(()=>console.log(4)); //写法二,把promise包裹在函数中,结果跟结果一一样 function p(){ return new Promise(resolve=>{ setTimeout(()=>resolve(),1000) }) } p() .then(()=>console.log(1)) .then(()=>console.log(2)) .then(()=>console.log(3)) .then(()=>console.log(4)); //写法三:在每次调用then时都再return出函数p(),就能正确按意愿每隔一秒打印出1234了 function p(){ return new Promise(resolve=>{ setTimeout(()=>resolve(),1000) }) } p() .then(()=>{console.log(1);return p()}) .then(()=>{console.log(2);return p()}) .then(()=>{console.log(3);return p()}) .then(()=>console.log(4));
请问前面两种写法为什么错了?他们每一步都是怎么执行的
20
收起
正在回答 回答被采纳积分+1
2回答
4.Vue与React高级框架开发
- 参与学习 人
- 提交作业 239 份
- 解答问题 10739 个
本阶段带你深入前端开发的肌理,通过ES6基础知识和前端主流高级框架的学习,助你快速构建企业级移动webAPP应用,进入职场的终极battle
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星