采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
老师,您好,按照视频中所讲,.then( ) 只要传入非函数的参数的话,就会返回一个空的 promise对象。 截图中,第一个 .then()41到43行传入的是一个函数(箭头函数) 所以这样的话不是应该返回一个带有状态的 promise 的对象吗? 在不加 return 为什么还是会执行47行而不是49行
还有就是,为什么加了return就会正常执行,还是没太听懂
期待老师您的回复!
我是这样思考的
只有promise对象才能调用 .then方法
加 return 与 不加 return 结果不一致 是因为是不同的promise对象调用了 第二个 .then
不加return 是 由第一个.then返回的promise对象调用的第二个.then(.then 会返回一个新的 promise 实例)
加 return 是 由loadScript('./4.js')返回的promise对象调用的第二个.then
对比下这两处代码,其中 Promise.resolve 就是返回一个新的promise实例,你看看能理解吗
then方法提供一个供自定义的回调函数,若传入非函数,则会忽略当前then方法。回调函数中会把上一个then中返回的值当做参数值供当前then方法调用。then方法执行完毕后需要返回一个新的值给下一个then调用(没有返回默认undefined)每个then只可能使用前一个then的返回值
登录后可查看更多问答,登录/注册
前端无门槛学习,从ES6到ES10,一套课程掌握JS最新语法
1.0k 8
1.4k 7
1.1k 6