zoukankan      html  css  js  c++  java
  • await等待结果总结

    通常await等的是一个promise(也就是包含异步操作,如果是普通值的话,等到的就是原始值)。
    等待promise分为以下几种情况:

    • promise resolve后没有then方法,那么等到的就是传给resolve的值
    function hai () {
        return new Promise((reslove, reject) => {
             setTimeout(() => {
                 reslove('hai')
             }, 1000)
        })
    }
    async function waitMe() {
     let a = await hai() // 
     let b=await 1
     console.log(a) // hai
     console.log(b)// 1
    }
    • promise 有then 方法,则等到的是then方法回调函数的返回值。如果then没有返回值则等到的是undefined
    function hai () {
        return new Promise((reslove, reject) => {
             setTimeout(() => {
                 reslove('hai')
             }, 1000).then((x)=>x+'then')
        })
    }
    async function waitMe() {
     let a = await hai() // 
     console.log(a) // haithen
    }
    function hai () {
        return new Promise((reslove, reject) => {
             setTimeout(() => {
                 reslove('hai')
             }, 1000).then((x)=>{var x=1})
        })
    }
    async function waitMe() {
     let a = await hai() // 
     console.log(a) // undefined
    }


                      

  • 相关阅读:
    DS博客作业02--栈和队列
    指针
    C语言博客作业04--数组
    函数
    留言板
    第三周-自主学习任务-面向对象基础与类的识别
    DS博客作业05--查找
    DS博客作业04--图
    DS博客作业03--树
    DS博客作业02--栈和队列
  • 原文地址:https://www.cnblogs.com/sunupo/p/15793163.html
Copyright © 2011-2022 走看看