文章目录

  • 前言
  • 一、异步是什么?
  • 二、举个例子来理解异步

    • 1.异步最典型的例子就是“回调函数”
  • 总结

前言

在vue的过程中,我们一定会遇到诸如:

function(参数).then(res=>{})

形式的代码。到底怎么编译执行的呢 ?举个例子就懂了。

一、异步是什么?

          异步(Asynchronous, async)是与同步(Synchronous, sync)相对的概念。在我们学习的传统单线程编程中,程序的运行是同步的(同步不意味着所有步骤同时运行,而是指步骤在一个控制流序列中按顺序执行)。而异步的概念则是不保证同步的概念,也就是说,一个异步过程的执行将不再与原有的序列有顺序关系。

        简单来理解就是:同步按你的代码顺序执行,异步不按照代码顺序执行,异步的执行效率更高。

       以上是菜鸟教程上的解释。而另一种解释就是:

给你两个容器,一个叫同步,一个叫异步,把要执行的代码分别分到同步和异步里面,先执行同步同时异步待编译,等同步执行完后执行异步里面的代码。

二、举个例子来理解异步

1.异步最典型的例子就是“回调函数”

在写vue的过程中,我们一定会遇到诸如:

function(参数).then(res=>{})

的代码,这就是异步(包含回调函数)

 随便写一个异步:

//<button @click="submit">提交</button>

//调用函数add()

// 异步程序,他会先执行外面的代码再执行里面的回调函数

    submit() {  
         console.log("外面的代码-1")
          add().then(res => {
            console.log(res)
            console.log("里面的代码")
          });
         console.log("外面的代码-2")
        }

执行的结果就可以看出他的执行顺序:

外面的代码-1

外面的代码-2

里面的代码

什么是异步

什么是异步

总结

这个例子中.then(res=>{}),就是一个回调函数。

发表回复