js循环中执行异步函数的方法


具体代码如下:

<!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>
        function getName(item){
            return new Promise((resolve, reject)=>{
                let sino = parseInt(Math.random() * 5000)
                console.log(sino);
                setTimeout(()=>{
                    resolve(item*2)
                },sino)
            })
        }
        async function getAllHistory() {
            let allHistory = []
            let list = [1,2,3,4,5];
            list.forEach((item)=>{
                allHistory.push((async(item)=>{
                   return await getName(item)
                })(item))
            })
            return await Promise.all(allHistory);
          }
          getAllHistory().then((res)=>{
            console.log(res);
          })
    </script>
</body>
</html>


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM