zoukankan      html  css  js  c++  java
  • 关于异步处理的几个阶段

    settimeout函数

    function ajax(){
        setTimeout(()=>{
            console.log('你好')
        },1000)
    }
    ajax()
    console.log('执行结果')
    
    //回调函数进行处理,先打印执行结果:你好,执行结束
    //回调函数解决顺序问题
    function ajax(fn){
        setTimeout(()=>{
            console.log('你好')
            fn()
        },1000)
    }
    ajax(()=>{
        console.log('执行结束')
    })
    console.log('执行结果')
     //callback回调地狱 
    function ajax(fn){
        setTimeout(()=>{
            console.log('你好')
            fn()
        },1000)
    }
    ajax(()=>{
        console.log('执行结束')
        // 里面的ajax从外层开始回调的哦console.log('执行结束2')根据放的位置不同
        //也会在不同时候打印呢,
        ajax(()=>{
            ajax(()=>{
                ajax(()=>{
                    console.log('执行结束2')
                })
            })
           
        })
    })
    console.log('执行结果')
    

    promise下一代异步解决方案
    在promise中处理异步

    
    function delay(word){
        return new Promise((resolve,reject)=>{
            setTimeout(()=>{
                resolve(word)
            },2000)
        })
    }
    delay('哪吒')
        .then((word)=>{
            console.log(word)
            return delay('杨戬')
        })
        .then((word)=>{
            console.log(word)
            return delay('观音菩萨')
        })
        .then((word)=>{
           console.log(word)
        })
    

    async最终异步处理结果,使用koa可以运行出结果,浏览器并不行啊,我亲测过

      function delay(word){
            return new Promise((resolve,reject)=>{
                setTimeout(()=>{
                    resolve('hello'+word)
                },2000)
            })
        }
        async function start(){
            const word1 = await delay('孙悟空')
            console.log(word1)
            const word2 = await delay('唐僧')
            console.log(word2)
            const word3 = await delay('猪八戒')
            console.log(word3)
        }
        start()
    
  • 相关阅读:
    前端优化,注意的一些东西
    php遍历memcache的方法
    mysql增量备份
    CI框架安装
    sphinx:received zerosized searchd response
    SEO思考:逆水行舟 不进则退
    利用GNUstep在windows下编写objectc
    Centos5.3下安装memcached
    想卖网站?我来给你指条明路
    时髦的互联网公司都在用什么技术?
  • 原文地址:https://www.cnblogs.com/smart-girl/p/11270625.html
Copyright © 2011-2022 走看看