promise异步队列化

promise异步队列化

promise异步队列化,使代码更简洁,可读性更高

1.常见的异步程序主要有

  • 定时器
  • 事件绑定
  • AJAX

2.promise的使用

首先需要创建一个promise对象,promise对象中有两个参数,若成功就调用resolve方法,失败调用reject方法

 	const promise = new Promise((resolve, reject)=>{
      console.log('promise的函数执行了...');
      // 执行异步操作
      setTimeout(() => {
        console.log('setTimeout执行了.....');
        //........
        // resolve([1, 2, 3]);
        reject(new Error('网络错误'));

      }, 1000);
    });

对异步函数产生的回调函数使用.then()方法进行操作

 promise.then(
     // resolve状态执行
     (data)=>{
       console.log('回调1执行了....');
       console.log(data);
     }, 
     //reject状态执行
     (err)=>{
       console.log('回调2执行了....');
       console.log(err);
     }
   );
也可以使用.catch方法对失败的错误信息进行捕捉
 .catch((error)=>{
        console.log(error);
      })

promise 的一个常见的面试题

	 console.log(1);
	 let p = new Promise((resolve, reject)=>{
        console.log(2);
        'fasdfasdfasd'.map();
        resolve('success');
        console.log(3);
      });
      
      console.log(4);

      p
      .then((data)=>{
        console.log(5);

        // console.log('then执行了:', data);
        // return Promise.resolve(data);
        // return Promise.reject(data);
      })
      .then((data)=>{
        console.log('then执行了:', data);
      })
      .catch((error)=>{
        console.log(6);
        console.log('catch执行了:', error);
      })

      console.log(7);

结果为: 123475
自己学习的小总结,感觉知识有些零散,希望自己以后可以有更好的总结

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值