promise 再用例分析 ES6 async await 与 .then()的对比
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
// let p1 = new Promise((resove, reject) => {
// let arr = [];
// setTimeout(() => {
// arr = [1, 2]
// resove(arr)
// }, 1000);
// })
// let p2 = new Promise((resove, reject) => {
// let arr = [];
// setTimeout(() => {
// arr = [3, 4]
// resove(arr)
// }, 2000);
// })
// p1.then(res => {
// console.log(res);
// let resArr = res;
// p2.then(res => {
// console.log([...resArr, ...res]);
// })
// })
function p1() {
return new Promise((resove, reject) => {
let arr = [];
setTimeout(() => {
arr = [1, 2]
console.log("执行了第一个P1");
resove(arr)
}, 2000);
})
}
function p2() {
return new Promise((resove, reject) => {
let arr = [];
setTimeout(() => {
arr = [3, 4]
console.log("执行了第二个P2");
resove(arr)
}, 1000);
})
}
async function all() {
let resP1 = await p1()
let resP2 = await p2()
console.log(resP1, resP2);
}
all();
</script>
</body>
</html>