位置: IT常识 - 正文

ES6中 Promise 概念、基本用法和封装ajax(json数据使用)(es6 promise是什么)

编辑:rootadmin
ES6中 Promise 概念、基本用法和封装ajax(json数据使用)

目录

一、定义

1.对象的状态不受外界影响。

2.一旦状态改变了就不会在变,也就是说任何时候Promise都只有一种状态。

二、基础用法(Proimse.prototype.then()、Promise.prototype.catch())

Proimse.prototype.then()

Promise.prototype.catch()

三、json的使用(需要先了解)

四、ajax的基础使用

1.基本流程

2.基本使用

3.用promise封装


一、定义

推荐整理分享ES6中 Promise 概念、基本用法和封装ajax(json数据使用)(es6 promise是什么),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:promise es6的作用,promise es6的作用,es6的promise有几种状态,es6promise用法例子,es6 promise是什么,es6的promise的用法,es6的promise的用法,es6的promise有几种状态,内容如对您有帮助,希望把文章链接给更多的朋友!

Promise是异步编程的一种解决方案,可以替代传统的解决方案--回调函数和事件。ES6统一了用法,并原生提供了Promise对象。作为对象,Promise有一下两个特点:

1.对象的状态不受外界影响。

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

2.一旦状态改变了就不会在变,也就是说任何时候Promise都只有一种状态。

Promise对象的状态改变,只有两种可能:从pending变为fulfilled和从pending变为rejected。只要这两种情况发生,状态就凝固了,不会再变了,会一直保持这个结果,这时就称为 resolved(已定型)。

二、基础用法(Proimse.prototype.then()、Promise.prototype.catch())ES6中 Promise 概念、基本用法和封装ajax(json数据使用)(es6 promise是什么)

Promise 通过new关键词 回调函数有两个形参 第一个:resolve(成功) reject(失败的方法)resolve reject这两个可以改变Promise实例的状态

Proimse.prototype.then()

它的作用是为 Promise 实例添加状态改变时的回调函数。补充可以链式。

Promise.prototype.catch()

用于指定发生错误时的回调函数。

//Promise 通过new关键词 回调函数有两个形参 第一个:resolve(成功) reject(失败的方法)//resolve reject这两个可以改变Promise实例的状态const MyPormise = new Promise((resolve,reject)=>{let flag = true;if(flag){//成功的状态resolve("成功的值");}else{//失败状态reject("失败的值");}});//获取 Promise的值,有两个参数,第一个参数:回调函数显示成功的状态,第二个是显示失败的状态MyPormise.then( //Proimse.prototype.then()resolve=>console.log(resolve),reject=>console.log(reject))//MyPormise.catch( //Promise.prototype.catch()//reject=>console.log(reject)//) 三、json的使用(需要先了解)let Person = '{"realname":"张三","age":19}';//对象的json数据格式console.log(JSON.parse(Person));let persons = '["张三","李四"]' //数组的json数据格式console.log(JSON.parse(persons));四、ajax的基础使用1.基本流程

用get打开请求地址

发送请求send()

监听状态的变化,从而获取数据

2.基本使用const ajax = new XMLHttpRequest();// 1.用get打开请求地址ajax.open("GET","http://127.0.0.1:8848/web2209/ES6/test.json");// 2.发送请求ajax.send();//3.监听状态的变化,从而获取数据ajax.onreadystatechange = ()=>{if(ajax.readyState == 4){ //xml的状态if(ajax.status==200){//代表成功const data = JSON.parse(ajax.response);console.log(data);}else{console.log("请求失败");}}}3.用promise封装

封装函数可以方便下一次的调用

function sendajax(url){return new Promise((resolve,reject)=>{const Obj = new XMLHttpRequest();Obj.open("GET",url);Obj.send();Obj.onreadystatechange = ()=>{if(Obj.readyState==4){if(Obj.status==200){//http状态码const data = JSON.parse(Obj.response);resolve(data);}else{reject("数据请求失败...");}}}})}const MyPromise = sendajax("http://127.0.0.1:8848/web2209/ES6/test.json");MyPromise.then((resolve)=>{console.log(resolve);})
本文链接地址:https://www.jiuchutong.com/zhishi/300363.html 转载请保留说明!

上一篇:html多个好看的背景动态效果(附源码)(html多页面)

下一篇:这几个SQL语法的坑,你踩过吗(这几个sql语法的区别)

  • 钉钉群不小心移除了怎么恢复(钉钉群不小心移出了怎么办)

    钉钉群不小心移除了怎么恢复(钉钉群不小心移出了怎么办)

  • 微信红包可以直接退回吗(微信红包可以直接进银行卡吗)

    微信红包可以直接退回吗(微信红包可以直接进银行卡吗)

  • 淘宝卖家怎么参加双十一(淘宝卖家怎么参加聚划算活动)

    淘宝卖家怎么参加双十一(淘宝卖家怎么参加聚划算活动)

  • 什么主要用来将不同类型的网络连接起来(什么主要用来将不同的网络连接起来)

    什么主要用来将不同类型的网络连接起来(什么主要用来将不同的网络连接起来)

  • 卖家要你修改退款原因(卖家要你修改退款申请)

    卖家要你修改退款原因(卖家要你修改退款申请)

  • 支付宝健康宝暂无信息怎么回事(健康宝提示)

    支付宝健康宝暂无信息怎么回事(健康宝提示)

  • 5v2a和5v3a可以通用吗(5v2a和5v5a可以通用吗)

    5v2a和5v3a可以通用吗(5v2a和5v5a可以通用吗)

  • 笔记本的键盘灯怎么打开(笔记本的键盘灯光怎么开)

    笔记本的键盘灯怎么打开(笔记本的键盘灯光怎么开)

  • 高德语音唤醒叫什么(高德 语音唤醒)

    高德语音唤醒叫什么(高德 语音唤醒)

  • 腾讯大王卡微信免流量吗(腾讯大王卡微信免流量怎么激活)

    腾讯大王卡微信免流量吗(腾讯大王卡微信免流量怎么激活)

  • 台式电脑突然黑屏,主机在运行,屏幕没显示(台式电脑突然黑屏开不了机按电源没反应)

    台式电脑突然黑屏,主机在运行,屏幕没显示(台式电脑突然黑屏开不了机按电源没反应)

  • qq实名认证可以改几次(qq实名认证可以绑定别人的银行卡吗)

    qq实名认证可以改几次(qq实名认证可以绑定别人的银行卡吗)

  • fastboot模式也叫恢复模式吗(fastboot?)

    fastboot模式也叫恢复模式吗(fastboot?)

  • 苹果4g变e怎么恢复(iphone的4g变成e咋回事)

    苹果4g变e怎么恢复(iphone的4g变成e咋回事)

  • 腾讯会议黑屏怎么办(腾讯会议黑屏了)

    腾讯会议黑屏怎么办(腾讯会议黑屏了)

  • 苹果手机qq看点怎么关(苹果手机qq看点和小世界怎么切换)

    苹果手机qq看点怎么关(苹果手机qq看点和小世界怎么切换)

  • ipad怎样注册新qq号(ipad怎样注册新的id)

    ipad怎样注册新qq号(ipad怎样注册新的id)

  • qq群怎么开视频会议(qq群视频怎么操作步骤)

    qq群怎么开视频会议(qq群视频怎么操作步骤)

  • 华为如何给苹果无线充电(华为如何给苹果传东西)

    华为如何给苹果无线充电(华为如何给苹果传东西)

  • 华为jkmtl00是啥型号(jkmtl00华为什么型号手机)

    华为jkmtl00是啥型号(jkmtl00华为什么型号手机)

  • vivo手机备忘录在哪里(vivo手机备忘录怎么设置密码)

    vivo手机备忘录在哪里(vivo手机备忘录怎么设置密码)

  • 苹果11后盖什么材质(苹果后盖什么样的好)

    苹果11后盖什么材质(苹果后盖什么样的好)

  • 手机微信字太小怎么办(手机微信字太小了怎么调大)

    手机微信字太小怎么办(手机微信字太小了怎么调大)

  • 计算机类型大致分为哪三类(计算机 类型)

    计算机类型大致分为哪三类(计算机 类型)

  • 怎么听别人撤回的语音(怎么看别人撤回的语音)

    怎么听别人撤回的语音(怎么看别人撤回的语音)

  • win10怎么安装蓝牙(wind10蓝牙怎么安装)

    win10怎么安装蓝牙(wind10蓝牙怎么安装)

  • 如何在微拍堂卖东西(微拍堂怎么卖)

    如何在微拍堂卖东西(微拍堂怎么卖)

  • 苹果取消协议扣款在哪设设置(苹果协议支付在哪里解除)

    苹果取消协议扣款在哪设设置(苹果协议支付在哪里解除)

  • 电话接听声音小怎么办(苹果手机电话接听声音小)

    电话接听声音小怎么办(苹果手机电话接听声音小)

  • 设置siri的自定义回答(siri能不能自定义声音)

    设置siri的自定义回答(siri能不能自定义声音)

  • 税控盘维护费会计分录怎么写
  • 一般纳税人销售旧货
  • 人员经费包括哪些方面?
  • 买烟草可以开发票吗
  • 如何查看发票是否被抵扣
  • 非税收入一般缴款书一式几联
  • 办理契税需要的户口本复印件可以吗
  • 实收资本在利润表中怎么体现出来
  • 支票存根必须盖银行章吗
  • 电器电子产品及配件入账
  • 长期股权投资的4个明细科目
  • 先付一半款财务应该怎么写
  • 技术咨询合同包括就特定技术项目提供
  • 小规模纳税人2018
  • 物业公司怎么开展业务
  • 案例分析关于团员青年的思想困惑疏导和成长问题释疑
  • 个税申报异常怎么办
  • 公允价值变动损益属于损益类的
  • 合并财务报表的特点
  • 国税申报纳税调整项目怎么填的?
  • 安置房视同销售需要缴纳所得税吗?
  • 企业法人的工资没有实收可以退税吗
  • 接受捐赠后会引起
  • 员工报销差旅费并归还借款会计分录
  • 每股收益增长率计算公式
  • 补充协议是否缴纳印花税
  • 虚假财务报表的法律后果
  • 税收原则的含义
  • 非营利组织免税资格公示
  • 税控系统维护费抵扣申报表怎么填
  • 后端怎么把图片传给前端的
  • vue3 element-plus
  • 收到预付货款下月交货会计分录
  • 服务器部署环境
  • 手把手怎么写
  • php快速排序非递归
  • 企业转让专利权属于什么收入
  • 保障金纳入地方财政吗
  • 企业应纳税所得额的计算应遵循权责发生制原则
  • 农产品增值税免税备案资料
  • 进项抵扣了还要交附加嘛
  • 税务师考试的报名时间
  • 劳务报酬和工资薪金有什么区别
  • 企业的利润分配包括哪些
  • 应收账款贷方余额年末怎么处理
  • 作废的发票也要交印花税吗
  • 应收票据周转率公式
  • 福利费可以计入销售费用吗
  • 免抵退税额账务处理办法
  • 当月扣缴社保分录
  • 过账发票和不过票的区别
  • 报销如果没有发票怎么补救
  • 高新技术企业认定管理办法
  • 怎么看财务报表平不平
  • 全面解析皮炎
  • 关于国际学校
  • freebsd 安装
  • xp系统蓝屏解决
  • linux常用命令 删除
  • linux安装atop
  • 电脑怎么换系统教程
  • 用xp系统打造
  • linux的tar
  • windows7怎么设置右键菜单
  • linux012
  • bootstrap模态窗口
  • perl cgi
  • unity3d游戏教程
  • python中2和2.0的区别
  • csm support
  • android.view.window.addflags
  • unity 子对象
  • android pipepline
  • js中的类和对象
  • 北京大兴区地税局电话
  • 农民专业合作社章程完整版
  • 税务师事务所企业组织架构
  • 税控盘怎么变更
  • 资源税是地方税吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设