Promise.resolve(1)
.then(2)
.then(Promise.resolve(3))
.then(console.log)
运行结果: 1
解释:.then 或者 .catch 的参数期望是函数,传入非函数则会发生值穿透。
Promise.resolve(1)
.then(function(){return 2})
.then(Promise.resolve(3))
.then(console.log)
结果为2
Promise.resolve(1)
.then(function(){return 2})
.then(function(){return Promise.resolve(3)})
.then(console.log)
结果为3
解释: Promise方法链通过return传值,没有return就只是相互独立的任务而已