zoukankan      html  css  js  c++  java
  • Promise

     promise的基本使用

    <!DOCTYPE html>
    <html lang="en">
    <head>
      <meta charset="UTF-8">
      <meta name="viewport" content="width=device-width, initial-scale=1.0">
      <meta http-equiv="X-UA-Compatible" content="ie=edge">
      <title>Document</title>
    </head>
    <body>
      <script>
        new Promise((resolve,reject)=>{
          setTimeout(()=>{
            resolve("abc")
            reject("sssss")
          },1000)
        }).then(data=>{
          console.log(data);
          //第一次
          return new Promise((resolve,reject)=>{
            setTimeout(()=>{
             resolve("sss")
            },1000)
          }).then(data=>{
            console.log(data)
         //第二次
          return new Promise((resolve,reject)=>{
            setTimeout(() => {
              resolve("ccc")
            }, 1000);
          }).then(data=>{
            console.log(data)
          },err=>{
            console.log(err)
          })  
          })//简写err
        })
        // }).catch(error=>{
        //   console.error(error);
        // })
      </script>
    </body>
    </html>

    promise的简写

    <!DOCTYPE html>
    <html lang="en">
    <head>
      <meta charset="UTF-8">
      <meta name="viewport" content="width=device-width, initial-scale=1.0">
      <meta http-equiv="X-UA-Compatible" content="ie=edge">
      <title>Document</title>
    </head>
    <body>
      <script>
        new Promise((resolve,reject)=>{
          setTimeout(()=>{
            resolve("abc")
            reject("asdasd")
          },1000)
        }).then(data=>{
          console.log(data);
          //第一次
           return data+"a"//最简便                      // return Promise.resolve(data+"a")   第二简便
        }).then(data=>{
            console.log(data)
         //第二次
          return  Promise.resolve("aad")
          }).then(data=>{
            console.log(data)
          }).catch(err=>{
            console.log(err)
          })  
      </script>
    </body>
    </html>

    all的使用

    <!DOCTYPE html>
    <html lang="en">
    <head>
      <meta charset="UTF-8">
      <meta name="viewport" content="width=device-width, initial-scale=1.0">
      <meta http-equiv="X-UA-Compatible" content="ie=edge">
      <title>Document</title>
    </head>
    <body>
      <script>
        Promise.all([
        new Promise((resolve,reject)=>{
          setTimeout(()=>{
             resolve([{age:18,name:"wang"},'result1'])
          },1000)
        }),
         
        new Promise((resolve,reject)=>{
          setTimeout(() => {
            resolve({age:17,name:"wangxingyu"},"result2")
          }, 1000);
          })
        ]).then(results=>{
          console.log(results);
        })
      </script>
    </body>
    </html>
  • 相关阅读:
    pycharm破解补丁的使用
    C# 解析JSON格式数据
    LINQ to DataSet的DataTable操作
    日期格式化
    vue scoped原理
    vue父子组件生命周期执行顺序
    js判断同一天和同一周
    flex总结
    react-router v4 参数传递
    link标签rel="alternate"属性的作用及用法
  • 原文地址:https://www.cnblogs.com/wxy0715/p/12442663.html
Copyright © 2011-2022 走看看