0
点赞
收藏
分享

微信扫一扫

Promise的使用

林塬 2023-08-03 阅读 42

Promise的使用

Promise是ES6中新增的异步编程解决方案。它的作用是代替回调函数,用于处理异步操作的结果。

Promise的状态

Promise对象存在三种状态:

  • pending: 初始状态,既不是成功也不是失败状态。
  • fulfilled: 意味着操作成功完成。
  • rejected: 意味着操作失败。 Promise对象的状态只能从pending变为fulfilled或者从pending变为rejected,并且状态一旦改变就不会再变。

Promise的基本用法

使用Promise构造函数来创建一个Promise对象:

const promise = new Promise(function(resolve, reject) {
	// ...做一些异步操作
	if(/* 异步操作成功 */){
		resolve(value);
	} else {
		reject(error);
	}
});

Promise构造函数接收一个函数参数,该函数有resolve和reject两个参数:

  • resolve:将Promise状态置为fulfilled
  • reject:将Promise状态置为rejected 然后可以使用then方法指定resolved状态和rejected状态的回调函数:
  promise.then(function(value) {
  // fulfilled
  }, function(error) {
  // rejected
  });

Promise示例

        const promise = new Promise(function (resolve, reject) {
            setTimeout(()=>{
                let num = Math.random();
                if(num < 0.5){
                    resolve("操作成功!num=" + num);
                } else {
                    reject("操作失败!num=" + num);
                }
            },300);
        });

        promise.then(function (msg) {
            console.log(msg);
        }).catch(function (msg) {
            console.log(msg);
        });

上面代码使用Promise封装了一个请求,请求成功时调用resolve,请求失败时调用reject。 然后使用then方法分别指定resolved和rejected状态的回调函数,从而能够按照Promise的机制进行异步处理。这是一个Promise基础用法的简单示例。

举报

相关推荐

0 条评论