美文网首页
ES6异步函数sync

ES6异步函数sync

作者: 光头小青蛙 | 来源:发表于2019-08-04 15:36 被阅读0次
  • es6新增的sync是用来解决异步编程的函数,最常见的异步编程就ajax请求,一般开发中都会遇到一个场景,就是封装了一个ajax请求函数,需要获取请求的结果才能进行下一步的操作,那这时候,就不能直接用变量接收ajax的返回值,因为不知道什么时候请求完成,而js的代码运行是不会等待请求的完成,它一直向下运行,这个时候变量接收的值是undefind,只能把逻辑操作放到请求成功的回调中。es6里面解决这个问题推出了sync函数。
使用sync函数
  • 使用sync函数,需要在函数前面加上sync标识,表示这是一个异步函数,使用await命令等待异步请求的结果(需要在请求成功的回调中return一个值),用变量接收,await运行完毕之后才会继续向下运行,sync函数返回的是一个promise,所以也可通过.then的方式拿到异步结果。
普通函数
function set(){
            var result;
            $.ajax({
                url:"https://v1.itooi.cn/netease/banner",
                type:"GET",
                success:function(res){
                    result=res;
                    return res
                }
            })
            console.log(result)//undefined
        }
        set()
sync函数
 async function get(){
           var result=await $.ajax({
                url:"https://v1.itooi.cn/netease/banner",
                type:"GET",
                success:function(res){
                    return res
                }
            })
            console.log(result)//data
            return result;
        }
get().then((res)=>{
            console.log(res)//data
        });

相关文章

  • ES6异步函数sync

    es6新增的sync是用来解决异步编程的函数,最常见的异步编程就ajax请求,一般开发中都会遇到一个场景,就是封装...

  • GCD的理解与应用

    一. GCD应用中主要分为函数和队列函数分为:同步函数,异步函数同步函数 dispatch_sync(dispat...

  • iOS多线程篇-GCD基本概念使用

    简述 同步函数和异步函数同步函数//传入的为队列和任务dispatch_sync(dispatch_queue_t...

  • iOS GCD基本使用及详解

    GCD的基本函数: dispatch_sync() 同步执行 dispatch_async() 异步执行 d...

  • iOS底层原理-多线程

    多线程相关知识: 同步线程:dispatch中的sync函数,即是在当前线程做事情 异步函数:dispatch中的...

  • 03-JavaScript-Generator异步编程

    Generator 概念 Generator 函数是 ES6 提供的一种异步编程解决方案 Generator 函数...

  • Swift 多线程

    容易混淆的术语:同步 异步 串行 并发 同步: sync函数在当前线程中执行任务,不具备开启新线程的能力 异步: ...

  • es6学前准备(一)

    ES6优势 1、 对象拷贝2、函数默认参数3、字符串模板 ES6使用频率高: 结构赋值箭头函数set map异步操...

  • 20.ES6中Generator生成器

    Generator是ES6的生成器1、Generator 函数是 ES6 提供的一种异步编程解决方案,在函数中可以...

  • es6、es7异步

    Generator函数是ES6提供的一种异步编程解决方案ES7提供了async函数,使得异步操作变得更加方便 所谓...

网友评论

      本文标题:ES6异步函数sync

      本文链接:https://www.haomeiwen.com/subject/hflydctx.html