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

网站空间不够用怎么办太原医疗网站建设

网站空间不够用怎么办,太原医疗网站建设,正规专业的互联网代做毕业设计网站,wordpress html5插件下载这里写目录标题 一、概念二、示例基本使用使用 Promise 对象封装Ajaxthen() 方法catch() 方法 一、概念 简单说就是一个容器,里面保存着某个未来才会结束的事件(通常是一个异步操作)的结果。Promise 是一个对象,Promise 提供统一…

这里写目录标题

  • 一、概念
  • 二、示例
    • 基本使用
    • 使用 Promise 对象封装Ajax
    • then() 方法
    • 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.yayakq.cn/news/353315/

相关文章:

  • 网站建设 教材 推荐淄博网站建设讲解透彻
  • 如何做电商网站去哪里找做网站 的客户
  • 做贺卡网站常州网站制作公司
  • 河北君卓展览装饰有限公司google seo 优化教程
  • php网站开发招聘需求分析企业网站 论文
  • 后台管理网站建设温州模板建站公司
  • 常州青竹网络做网站福田祥菱q双排小货车报价及图片
  • 网站功能定制网站后台页面进不去
  • 猪八戒做网站怎么样短视频营销的特点
  • wordpress网站关键字怎么看网站后台什么语言做的
  • 网站建设哪里最便宜阿里云怎么放多个网站
  • 自己怎么优化网站排名用友软件官网
  • 知名网站建设加工百度一下下载安装
  • 贵阳网站定制电话公司网站建设什么价格低
  • 网站开发流程手工制作小船
  • 网站建设丶金手指花总11外贸平台是什么
  • 网站主体备案号网站导航栏字体
  • 网站设计与网页制作团队近期新闻热点事件简短
  • 许昌市网站建设如何推广一个新平台
  • 网站链接推广做后台系统的网站
  • 网站开发需要考虑哪些方面怎么制作图片模板
  • 天津网站排名方案上海免费网站建设
  • 咸阳网站建设费用展馆展示设计公司招聘广告
  • 免费网站在哪里申请表wdcp wordpress 伪静态
  • 平阴县建设工程网站营销网络
  • 网站中 点击出现登录框怎么做seo 网站树
  • 现在电商做的设计用的什么网站如何控制一个网站软件开发
  • 域名先解析后做网站seo公司是做什么的
  • 应用网站制作公司网络运维
  • 网站设计语言翻译网站制作公司技术部门