当前位置: 首页 > news >正文

长沙装修公司招聘网整站优化的公司

长沙装修公司招聘网,整站优化的公司,构建一个网站的步骤,温州网站开发流程Promise 是异步编程的一种解决方案,比传统的解决方案——回调函数和事件——更合理和更强大。它由社区最早提出和实现,ES6 将其写进了语言标准,统一了用法,原生提供了 Promise 对象。 Promise 对象有以下两个特点。 对象的状态不受…

Promise 是异步编程的一种解决方案,比传统的解决方案——回调函数和事件——更合理和更强大。它由社区最早提出和实现,ES6 将其写进了语言标准,统一了用法,原生提供了 Promise 对象。

Promise 对象有以下两个特点。

  1. 对象的状态不受外界影响。 Promise 对象代表一个异步操作,有三种状态:pending(进行中)、fulfilled(已成功)和rejected(已失败)。只有异步操作的结果,可以决定当前是哪一种状态,任何其他操作都无法改变这个状态。这也是 Promise 这个名字的由来,它的英语意思就是“承诺”,表示其他手段无法改变。

  2. 一旦状态改变,就不会再变,任何时候都可以得到这个结果。 Promise 对象的状态改变,只有两种可能:从 pending 变为 fulfilled 和从 pending 变为 rejected 。只要这两种情况发生,状态就凝固了,不会再变了,会一直保持这个结果,这时就称为 resolved(已定型)。如果改变已经发生了,你再对 Promise 对象添加回调函数,也会立即得到这个结果。这与事件(Event)完全不同,事件的特点是,如果你错过了它,再去监听,是得不到结果的。

Promise 有几种静态方法和实例方法。

静态方法:

  • Promise.resolve(value): 返回一个以给定值解析为成功的 Promise 对象。
  • Promise.reject(reason): 返回一个由于给定原因而拒绝的 Promise 对象。
  • Promise.all(iterable): 接收一个可迭代对象,所有输入的 promise 都成功时返回一个 promise,其结果为一个数组,包含所有输入 promise 的结果。如果任何一个输入 promise 失败,则立即拒绝。
  • Promise.race(iterable): 接收一个可迭代对象,一旦其中一个 promise 解决或拒绝,就返回一个 promise,其结果或拒绝理由与第一个解决或拒绝的 promise 相同。
  • Promise.allSettled(iterable): 接收一个可迭代对象,等待所有的 promise 都完成(无论是解决还是拒绝),然后返回一个 promise,其结果为一个数组,包含每个 promise 的状态。

实例方法(Promise.prototype):

  • .then(onFulfilled, onRejected): 注册当 promise 解决或拒绝时的回调函数。onFulfilled 在 promise 成功时调用,onRejected 在 promise 失败时调用。返回一个新的 promise。
  • .catch(onRejected): 添加一个处理 promise 失败情况的回调函数。返回一个新的 promise。
  • .finally(onFinally): 注册一个在 promise 完成(无论成功或失败)后执行的回调函数。返回一个新的 promise。

用例:

// 使用 Promise.resolve 创建一个成功的 promise
let resolvedPromise = Promise.resolve("Success");// 使用 Promise.reject 创建一个失败的 promise
let rejectedPromise = Promise.reject("Failure");// 使用 Promise.all 等待多个 promise 完成
Promise.all([resolvedPromise, rejectedPromise]).then(results => console.log(results)).catch(error => console.error(error));// 使用 Promise.race 等待最快完成的 promise
Promise.race([resolvedPromise, rejectedPromise]).then(value => console.log(value)).catch(error => console.error(error));// 使用 Promise.allSettled 等待所有 promise 完成,不论成功或失败
Promise.allSettled([resolvedPromise, rejectedPromise]).then(results => console.log(results)); // 输出每个 promise 的状态// 使用 Promise.prototype.then 注册回调
let promise = new Promise((resolve, reject) => {resolve("Done");
});
promise.then(value => {console.log(value); // 输出:Done
});// 使用 Promise.prototype.catch 处理错误
promise.then(() => {throw new Error("An error occurred");
}).catch(error => {console.error(error.message); // 输出:An error occurred
});// 使用 Promise.prototype.finally 注册最终回调
promise.finally(() => {console.log("This is the final step.");
});
http://www.hkea.cn/news/550406/

相关文章:

  • 陇南市建设局网站商务软文写作
  • 做学术研究的网站营销方案怎么写?
  • 专业网站设计公司有哪些秒收录关键词代发
  • 织梦网站模板源码下载真实有效的优化排名
  • 网站建设过程中什么最重要磁力链bt磁力天堂
  • html5企业网站案例鹤壁搜索引擎优化
  • 网站建设平台简介链接交换平台
  • 照片展示网站模板宁波seo咨询
  • 奉贤建设机械网站制作长沙网址seo
  • 上海企业网站模板建站常用的网络推广方法
  • 大连零基础网站建设教学培训济南seo优化公司
  • html 做网站案例简单网站推广建设
  • 践行新使命忠诚保大庆网站建设线上广告
  • 定制网站建设服务商商家联盟营销方案
  • 集团官网建设公司外贸seo推广公司
  • 佛山新网站制作平台网站诊断工具
  • 做PPT的网站canvawhois查询
  • 营销型网站建设吉林定制化网站建设
  • 个人网上公司注册流程图新站优化案例
  • 做se要明白网站明星百度指数排名
  • 网页微博草稿箱在哪西安seo推广优化
  • 嘉兴微信网站建设谷歌首页
  • 什么网站做海报b站不收费网站
  • 如何自己做个简单网站seo知识点
  • 有哪些做批发的网站有哪些手续百度推广优化是什么意思
  • 用阿里巴巴店铺做公司网站怎么样引擎搜索有哪些
  • 网页制作软件属于什么软件类别简述seo的优化流程
  • 网站建设 公司新闻谷歌排名网站优化
  • 怎样做自己的vip解析网站佛山外贸seo
  • 我的网站在百度搜不到了seo是什么职业做什么的