为什么就两次请求要写那么多then?

来源:7-4 JS 异步相关的面试题

起点丶

2021-04-20

loadImg(url1).then(img1 => {
    console.log(img1.width)
    return img1 // 普通对象
}).then(img1 => {
    console.log(img1.height)
    return loadImg(url2) // promise 实例
}).then(img2 => {
    console.log(img2.width)
    return img2
}).then(img2 => {
    console.log(img2.height)
}).catch(ex => console.error(ex))

为什么课程里就请求两次图片加载,要写那么多then,写2个then,每个then请求一次就可以了吧?下边的代码没有问题吧?

loadImg(url1).then(img1 => {
    console.log(img1.width,img1.height)
    return loadImg(url2)
}).then(img2 => {
    console.log(img2.width,img2.height)
}).catch(ex => console.error(ex))
写回答

1回答

双越

2021-04-20

因为这个代码就是为了演示 then 的链式用法,故意这么做的。

实际工作中,你可以简洁的写。

0
0

一天时间高效准备前端技术一面 匹配大厂面试要求

针对时下面试高频考点,帮助新人js面试快速通关

4694 学习 · 1681 问题

查看课程