Promise all用法
Promise.all可以将多个Promise实例包装成一个新的Promise实例。同时,成功和失败的返回值是不同的,成功的时候返回的是一个结果数组,而失败的时候则返回最先被reject失败状态的值。
使用Promise.all有什么好处呢?
Promise.all将多个Promise放在一起处理,能简化回调的处理(不然需要调很多次,不科学),一个then回调就能拿到所有数据,对其进行处理,也能用一个catch回调捕获所有的异常
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
</body>
<script>
Promise.all([
new Promise((resolve, reject) => {
setTimeout(() => {
resolve({"id": "1001", "sex": "男"})
}, 2000)
}),
new Promise((resolve, reject) => {
setTimeout(() => {
resolve({"id": "1001", "age": 30})
}, 1000)
})
])
.then((results) => {
console.log(results)
})
.catch((errorMessage) => {
console.log(results)
})
</script>
</html>