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)结果为2Promise.resolve(1)
.then(function(){return 2})
.then(function(){return Promise.resolve(3)})
.then(console.log)结果为3不是太明白,then里面必须通过函数来返回的一个值才能被包装为Promise吗?
3 回答
慕斯卡2128210
TA贡献1条经验 获得超0个赞
只要.then的参数是函数,而且函数内部就返回值,那么这一个.then就会被执行,上一个.then返回什么值都不需要理会(除非此.then的参数需要上一个.then的return返回来)
添加回答
举报
0/150
提交
取消