es7学习教程之fetch解决异步嵌套问题的方法示例

网友投稿 272 2023-04-26


es7学习教程之fetch解决异步嵌套问题的方法示例

本文主要给大家介绍的是关于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

let name=students[i].name;

let age=students[i].age;

html+=`

  • 姓名${name},年龄${age}
  • let name=students[i].name;

    let age=students[i].age;

    html+=`

    `

    }

    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="";

    forJgjPz(let i=0,l=students.length;i

    let name=students[i].name;

    let age=students[i].age;

    html+=`

  • 姓名${name},年龄${age}
  • let name=students[i].name;

    let age=students[i].age;

    html+=`

    `

    }

    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

    let name=students[i].name;

    let age=students[i].age;

    html+=`

  • 姓名${name},年龄${age}
  • let name=students[i].name;

    let age=students[i].age;

    html+=`

    `

    }

    uldom.innerHTML=html;

    }

    main()

    感觉是不是很简单!比上一种方法更加的简单。

    总结

    以上就是这篇文章的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对我们的支持。


    版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

    上一篇:bootstrap table插件的分页与checkbox使用详解
    下一篇:java数据类型与二进制详细介绍
    相关文章

     发表评论

    暂时没有评论,来抢沙发吧~