1. <script>
    2. function runAsync1() {
    3. var p = new Promise(function (resolve, reject) {
    4. setTimeout(function () {
    5. resolve('数据1');
    6. return '数据2'
    7. }, 1000);
    8. });
    9. return p;
    10. };
    11. function runAsync2() {
    12. var p = new Promise(function (resolve, reject) {
    13. setTimeout(function () {
    14. resolve('数据3');
    15. return '数据4'
    16. }, 2000);
    17. });
    18. return p;
    19. };
    20. function runAsync3() {
    21. var p = new Promise(function (resolve, reject) {
    22. setTimeout(function () {
    23. resolve('数据5');
    24. return '数据6'
    25. }, 3000);
    26. });
    27. return p;
    28. };
    29. //若是Promise.all中有一个值的状态是reject则返回第一个reject的值
    30. Promise.all([runAsync1(), runAsync2(), runAsync3()])
    31. .then(function (results) {
    32. console.log(results);
    33. })
    34. .catch(function (reason) {
    35. console.log(reason);
    36. })
    37. </script>