Promise实用方法Promise.all和Promise.race

Promise.all和Promise.race是两种非常实用的方法,在我们的日常开发中某些场景时使用特别方便。

1.Promise.all(arr): 其中arr是多个Promise对象实例,只用当里面的所有实例有返回值时,Promise.all才会有返回值(其值是一个数组)。在实际开发中,例如请求c的参数需要依赖请求a请求b的返回值时,我们就可以利用Promise.all让二者并行去请求。而不需要分别让二者的请求变得同步。基本使用方法如下:

Promise实用方法Promise.all和Promise.race_第1张图片
Promise.all

2.Promise.race(arr): 其中arr是多个Promise对象实例,就是race这个单词的意思一样,意思是哪个跑得快,哪个就输出,当只要有一个Promise实例有返回值时,Promise.race的返回值就是这个值。通常我们再http请求时,做超时判断时可以这样使用,设置一个定时器,当定时器时间到了时就在UI上提醒请求超时。基本使用如下:

Promise实用方法Promise.all和Promise.race_第2张图片
Promsie.race

你可能感兴趣的:(Promise实用方法Promise.all和Promise.race)