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

大型门户网站是这样炼成的源代码加强文明网站内容建设

大型门户网站是这样炼成的源代码,加强文明网站内容建设,好的网站设计制作,公司建设网站费用这里写目录标题 一、概念二、示例基本使用使用 Promise 对象封装Ajaxthen() 方法catch() 方法 一、概念 简单说就是一个容器#xff0c;里面保存着某个未来才会结束的事件#xff08;通常是一个异步操作#xff09;的结果。Promise 是一个对象#xff0c;Promise 提供统一… 这里写目录标题 一、概念二、示例基本使用使用 Promise 对象封装Ajaxthen() 方法catch() 方法 一、概念 简单说就是一个容器里面保存着某个未来才会结束的事件通常是一个异步操作的结果。Promise 是一个对象Promise 提供统一的 API各种异步操作都可以用同样的方法进行处理。axios 的内部实现原理就是通过 Promise 实现的。Promise对象有以下两个特点 对象的状态不受外界影响。有三种状态pending进行中、fulfilled成功和rejected失败。只有异步操作的结果可以决定当前是哪一种状态任何其他操作都无法改变这个状态。一旦状态改变就不会再变任何时候都可以得到这个结果。Promise对象的状态改变只有两种可能从pending变为resolved和从pending变为rejected。只要这两种情况发生状态就凝固了不会再变了会一直保持这个结果。 Promise对象是一个构造函数用来生成Promise实例带有一个回调函数回调函数的两个参数是 resolve成功 和 reject失败,这两个参数他们也是函数。 二、示例 基本使用 function timeOut(ms) {// Promise对象是一个构造函数用来生成Promise实例// 闭包函数一个函数里面返回一个函数return new Promise((resolve, reject) {// ... 模拟执行异步操作,后端返回的数据let res {code: 200,//code:201data: {name: ES6学习},error: 失败了}setTimeout(() {// 异步执行成功if (res.code 200) {resolve(res.data);// 异步执行失败} else {reject(res.error);}},ms);});}// then方法的第一个参数是resolved状态的回调函数// 第二个参数是rejected状态的回调函数它们都是可选的。timeOut(4000).then((val){console.log(val); //这里的值接收的是 resolved() 的值},(err){console.log(err);//这里的值接收的是 rejected() 的值输出 失败了});Promise构造函数接受一个函数作为参数该函数的两个参数分别是resolve和reject。它们是两个函数由JavaScript引擎提供不用自己部署。 resolve函数的作用是将Promise对象的状态从“未完成”变成“成功”即从pending变为resolved,在异步操作成功时调用并将异步操作的结果作为参数传递。 reject函数的作用是将Promise对象的状态从“未完成”变为“失败”即从pending变为rejected,在异步操作失败时嗲用并将异步操作报出的错位u传递出去。 Promise 实例生成以后可以用 then方法分别指定resolved状态和 rejected状态的回调函数。 使用 Promise 对象封装Ajax const getJson function (url) {return new Promise((resolve, reject) {const xhr new XMLHttpRequest();xhr.open(GET, url);xhr.resposeType json;xhr.setRequestHeader(Accept, application/json);xhr.send();xhr.onreadystatechange function() {//console.log(READYSTATE xhr.readyState);if (xhr.readyState 4) { console.log(READYSTATE xhr.status); if (xhr.status 200) { resolve(this.responseText);} else {reject(new Error(xhr.statusText))}}}})}getJson(http://timor.tech/api/holiday/year/2024).then((data) {console.log(data);}, (error) {console.log(error);})then() 方法 如果一个promise执行完后 返回的还是一个promise 实例注意不是原来那个Promise实例会把这个promise 的执行结果传递给下一次then中。因此可以采用链式写法即then方法后面再调用另一个then方法。 catch() 方法 catch(err{})方法等价于then(null,err{})用于指定发生错误时的回调函数
http://www.hkea.cn/news/14263265/

相关文章:

  • 绵阳 网站开发 公司网站插件代码
  • 北京网站建设z亿玛酷1专注网站设计联盟
  • 个人做房产网站t天津建设工程信息网
  • 做邮箱网站青岛网络营销网络推广介绍
  • 地方志网站建设自查报告wordpress 语言文件
  • 电影网站开发需要多少钱wordpress nextapp
  • 网站什么时候恢复彩色wordpress 网上商城
  • 专业网站设计制作怎么弄自己的小程序
  • 企业集团网站源码重庆网站建设招聘
  • 厦门小羽佳网站建设开发初学者网站建设
  • 网站 设计案例石家庄做网站排名公司哪家好
  • 微信服务号可以做万网站么公交车网站怎么做留言板
  • 网站开发项目技能比赛获奖报道wordpress 页脚插件
  • 会员网站模板建设网站所需要的基础知识
  • 怎么在社保网站上做员工减少电影资源分享网站怎么做的
  • chokstick wordpress泰州整站优化
  • 公司网站建设需要要求什么wordpress用户名怎么设置
  • wordpress 读取数据库wordpress视频优化
  • 30个免费货源网站海淀网站开发公司
  • dedecms 音乐网站模板加快公司网站建设
  • p2p理财网站开发框架建立网站的基本过程
  • 建设网站备案不通过怎么办有专做高端折扣女装的网站吗
  • 长寿做网站商务网站开发实训报告
  • 网站伪静态免费炫酷网站模板
  • 专业合肥网站建设广州市住房和城乡建设局官方网站
  • 天津城乡住房建设厅网站首页绵阳 网站
  • 网站会员注册怎么做上海市场监督管理局
  • 公司建立网站的意义做网站需要多少钱知乎
  • 网站建设 部署与发布视频教程广州网站设计权威乐云践新
  • 小网站建设公司排名销量不高的网站怎么做