本文主要给大家介绍的是关于fetch API解决异步嵌套问题,下面话不多说,来一起看看详细的介绍:

我们之前学习了async和await,知道他是为了解决浏览器异步获取的的!但是我们用fetch api的话方法会更加的简单
async和await解决异步嵌套
function ajax(url){
return new Promise(function(reslove,reject){
let xmlHttp=new XMLHttpRequest();
xmlHttp.open("get",url,true);
xmlHttp.onreadystatechange=function(){
if(xmlHttp.readyState==4&&xmlHttp.status==200){
let data=JSON.parse(xmlHttp.responseText);
reslove(data);
}
}
xmlHttp.send(null);
})
}
let uldom=document.getElementById("students");
let url="http://192.168.0.57:8000/students.json";
async function main(){
let data=await ajax(url);
let students=data;
let html="";
for(let i=0,l=students.length;i<l;i++){
let name=students[i].name;
let age=students[i].age;
html+=`
<li>姓名${name},年龄${age}</li>
`
}
uldom.innerHTML=html;
}
main();
我们需要创建Promise函数来进行操作,如果我们用fetch解决的话,会更加的方便!
let uldom=document.getElementById("students");
let url="http://192.168.0.57:8000/students.json";
function main(){
fetch(url).then(respone=>{
return respone.json();
}).then(data=>{
let students=data;
let html="";
for(let i=0,l=students.length;i<l;i++){
let name=students[i].name;
let age=students[i].age;
html+=`
<li>姓名${name},年龄${age}</li>
`
}
uldom.innerHTML=html;
});
}
main();
不用创建Promise,直接调用then()是不是比上边更加的简单!
async、await结合fetch处理异步
let uldom=document.getElementById("students");
let url="http://192.168.0.57:8000/students.json";
async function main(){
let respone = await fetch(url);
let student = await respone.json();
let html="";
for (let i=0,l=students.length;i<l;i++){
let name=students[i].name;
let age=students[i].age;
html+=`
<li>姓名${name},年龄${age}</li>
`
}
uldom.innerHTML=html;
}
main()
感觉是不是很简单!比上一种方法更加的简单。
总结
以上就是这篇文章的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对的支持。
# es7
# fetch
# 异步
# Javascript es7中比较实用的两个方法示例
# es7学习教程之Decorators(修饰器)详解
# 的是
# 他是
# 给大家
# 很简单
# 这篇文章
# 谢谢大家
# 多说
# 比上
# 法会
# 直接调用
# 有疑问
# ajax
# url
# function
# class
# brush
# js
# open
# reject
# XMLHttpRequest
相关文章:
如何用PHP工具快速搭建高效网站?
建站主机与服务器功能差异如何区分?
c# 在高并发下使用反射发射(Reflection.Emit)的性能
建站之星CMS建站配置指南:模板选择与SEO优化技巧
如何在阿里云域名上完成建站全流程?
制作公司内部网站有哪些,内网如何建网站?
如何快速使用云服务器搭建个人网站?
C++中的Pimpl idiom是什么,有什么好处?(隐藏实现)
家族网站制作贴纸教程视频,用豆子做粘帖画怎么制作?
rsync同步时出现rsync: failed to set times on “xxxx”: Operation not permitted
5种Android数据存储方式汇总
如何配置IIS站点权限与局域网访问?
北京网站制作公司哪家好一点,北京租房网站有哪些?
建站之星3.0如何解决常见操作问题?
成都网站制作公司哪家好,四川省职工服务网是做什么用?
创业网站制作流程,创业网站可靠吗?
如何基于云服务器快速搭建网站及云盘系统?
logo在线制作免费网站在线制作好吗,DW网页制作时,如何在网页标题前加上logo?
济南网站制作的价格,历城一职专官方网站?
免费制作海报的网站,哪位做平面的朋友告诉我用什么软件做海报比较好?ps还是cd还是ai这几个软件我都会些我是做网页的?
Python路径拼接规范_跨平台处理说明【指导】
如何用低价快速搭建高质量网站?
网站制作哪家好,cc、.co、.cm哪个域名更适合做网站?
北京建设网站制作公司,北京古代建筑博物馆预约官网?
如何彻底删除建站之星生成的Banner?
义乌企业网站制作公司,请问义乌比较好的批发小商品的网站是什么?
如何在阿里云服务器自主搭建网站?
建站主机如何安装配置?新手必看操作指南
桂林网站制作公司有哪些,桂林马拉松怎么报名?
矢量图网站制作软件,用千图网的一张矢量图做公司app首页,该网站并未说明版权等问题,这样做算不算侵权?应该如何解决?
合肥制作网站的公司有哪些,合肥聚美网络科技有限公司介绍?
建站VPS选购需注意哪些关键参数?
道歉网站制作流程,世纪佳缘致歉小吴事件,相亲网站身份信息伪造该如何稽查?
电商网站制作公司有哪些,1688网是什么意思?
如何制作网站标识牌,动态网站如何制作(教程)?
上海网站制作网页,上海本地的生活网站有哪些?最好包括生活的各个方面的?
如何做静态网页,sublimetext3.0制作静态网页?
建站之星后台管理如何实现高效配置?
如何在IIS中配置站点IP、端口及主机头?
网站插件制作软件免费下载,网页视频怎么下到本地插件?
Thinkphp 中 distinct 的用法解析
北京制作网站的公司排名,北京三快科技有限公司是做什么?北京三快科技?
C++ static_cast和dynamic_cast区别_C++静态转换与动态类型安全转换
网站制作软件有哪些,制图软件有哪些?
制作网站的软件下载免费,今日头条开宝箱老是需要下载怎么回事?
手机钓鱼网站怎么制作视频,怎样拦截钓鱼网站。怎么办?
焦点电影公司作品,电影焦点结局是什么?
香港服务器网站生成指南:免费资源整合与高速稳定配置方案
潮流网站制作头像软件下载,适合母子的网名有哪些?
c# 服务器GC和工作站GC的区别和设置
*请认真填写需求信息,我们会在24小时内与您取得联系。