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

Promise笔记(一)

程序员文章站 2024-03-11 11:50:07
...

Promise笔记(一)
Promise 是异步编程的一种解决方案,其本身代表着一个异步操作,有三种状态:pending(进行中)、fulfilled(已成功)和rejected(已失败)。成功和失败的状态都叫resolved。

基本用法

const promise = new Promise(function(resolve, reject) {
  //异步操作
  setTimeout(function(value){
      console.log("异步操作完成");
      resolve(value);
  },500,"异步操作成功")
});
promise.then((value)=>console.log(value));
//结果:
//异步操作完成
//异步操作成功

resolve和reject分别作为异步操作成功和失败的回调函数
promise.then(onFulfilled, onRejected)用于传入异步操作成功或失败后的具体回调函数

因此可以将jQuery的ajax方法简单封装成Promise对象:

var AjaxPromise = function(param){
    return new Promise(function(resolve, reject){
        $.ajax({
            url: param.url,
            type: param.type,
            data: param.data || '',
            dataType:'json',
            success: function(data){
                resolve(data);
            },
            error: function(error){
                reject(error)
            }
        });
    });
}
相关标签: js promise