欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

js 中的异步操作

程序员文章站 2022-05-01 23:17:14
...

同步:同时执行一个个操作,生活例子:烧菜两只锅,一个锅正在顿鸡肉,一个锅正在炒菜,两件事同时进行。

异步:分不同时间段执行一个个的操作,生活例子:烧菜一个锅,先顿鸡肉,如何过了一段时间鸡肉好了,拿出放入菜再进行炒,两件事分不同时间段完成。

因为JavaScript是个单线程语言,所以默认是同步操作,那如何让它进行异步操作:

1,简单的异步其实定时器就是一个简单的异步,设置不同的时间段做某事。

console.log('顿鸡肉');
setTimeout(function(){
    console.log('炒菜');
},3000);

2,ajax进行异步操作

function regListener () {
    console.log();
}
var oReq = new XMLHttpRequest();
oReq.onload = reqListener;
oReq.open('get','url',false);
oReq.send();

3,promies进行异步操作

const myFirstPromise = new Promise((resolve, reject) => {
  // ?做一些异步操作,最终会调用下面两者之一:
  //

  //   成功执行这个
  //   resolve(someValue); // fulfilled
  // ?或
  //   失败执行这个
  //   reject("failure reason"); // rejected
});

4,async  await 实现异步操作

async created() {
      scroll(0, 0);
      this.type = this.$route.query.type ? this.$route.query.type : ''
      if (this.type) {
        await this.SigninSubmit();//执行签到,必须先执行
      }
      await this.getdata();
      await this.initData(null)