前端异步编程全套:xmlhttprequest > ajax > promise > async/await

这篇具有很好参考价值的文章主要介绍了前端异步编程全套:xmlhttprequest > ajax > promise > async/await。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

异步编程

  1. 同步与异步区别

    • 同步:按顺序,依次执行,向服务器发送请求-->客户端做其他操作

    • 异步:分别执行,向服务器发送请求==>同时执行其他操作

原生xmlhttprequest

  • 四步骤

    1. 创建ajax对象

      var a=new xmlhttprequest();
    2. 设定数据的传输方式(get、post),打开连接open()

      ajax对象.open("method","url","同步false/异步true")
    3. 获得响应数据

      属性 描述
      onreadystatechange 当readystate改变时就会调用该函数
      responsetext 获得字符串形式的响应数据
      responsexml 获得xml的形式的响应数据
      readystate 0:请求未初始化 1:服务器连接已建立 2:请求处理中 3:请求处理中 4:请求已完成,且响应已就绪
      status 200:ok 404:未找到页面
    4. 发送https请求:ajax.send()

  • 实际操作数据交换格式【不能跨域】:

    • 获取xml文件的内容,美观的渲染到页面文章来源地址https://www.toymoban.com/news/detail-429556.html

    • <button>获取数据</button>
          <table></table>
          <script>
              document.getElementsByTagName("button")[0].onclick=function(){
                  var ajax=new XMLHttpRequest;
                  ajax.open("get","work1.xml",true);
                  ajax.onreadystatechange=function(){
                      if(ajax.status==200&&ajax.readyState==4){
                          xixi(ajax.responseXML);
                      }
                  }
                  ajax.send()
              }
              function xixi(obj){
                          var table="<table><tr><th>姓名</th><th>年龄</th><th>地址</th></tr>"
                          var xml=obj.getElementsByTagName("xi");
                          for(i=0;i<xml.length;i++){
                              table+=`<tr><td>${xml[i].getElementsByTagName("name")[0].childNodes[0].nodeValue}</td>
                                      <td>${xml[i].getElementsByTagName("age")[0].childNodes[0].nodeValue}</td>
                                      <td>${xml[i].getElementsByTagName("address")[0].childNodes[0].nodeValue}</td></tr>`
                          }
                          document.getElementsByTagName("table")[0].innerHTML=table;
                 

到了这里,关于前端异步编程全套:xmlhttprequest > ajax > promise > async/await的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 前端常见面试题之异步(event loop, promise, async/await, 宏任务/微任务)

    从前到后,一行一行执行 如果某一行执行报错,则停止下面代码执行 先把同步代码执行完,再执行异步 示例: 输出结果为: 可以看到,在执行异步操作的过程中,主线程不会等待异步操作结束,而是继续往下执行后续的代码,当满足条件时触发异步操作的回调函数。 异步

    2024年02月01日
    浏览(40)
  • 前端异步编程 —— Promise对象

    在前端编程中,处理一些简短、快速的操作,在主线程中就可以完成。 但是,在处理一些耗时比较长以至于比较明显的事情,比如读取一个大文件或者发出一个网络请求,就需要异步编程来实现,以避免只用主线程时造成页面一时无法响应的事情。 以发送网络请求为例,在

    2024年02月08日
    浏览(35)
  • XMLHttpRequest,AJAX,Promise,Axios及操作实战

    XMLHttpRequest,AJAX,Promise,Axios都是发送异步请求的工具,只是使用的场合和方式有所不同。都是一种用于创建快速动态网页的技术 1、我们点击淘宝首页的男装,进入男装页面的这个请求过程称之为“同步请求”。 2、请求提交之后,需要重新加载整个页面,即使当前的数据有部分

    2024年02月03日
    浏览(27)
  • Ajax_3 Ajax原理+ (XMLHttpRequest + Promise )+ 封装一个axios插件库,实现功能。

    01-Ajax原理-XMLHttpRequest 使用XMLHttpRequest 步骤: 创建XMLHttpRequest对象 配置请求方法请求url网址 监听loadend事件,接受响应结果 发起请求 需求:使用XMLHttpRequest对象与服务器通信 代码示例 02-XMLHttpRequest-查询参数 定义:浏览器提供给服务器的额外信息,让服务器返回浏览器想要的

    2024年02月14日
    浏览(23)
  • 深入理解 Promise、async、回调函数和 AJAX

    简介:本篇博客将介绍 Promise、async、回调函数和 AJAX,这些是在 JavaScript 中处理异步编程和数据交换的关键技术。我们将通过代码示例和解释来详细说明它们的基本用法和优势。 下面是一个简单的示例,展示 Promise 的基本用法: 在创建 Promise 对象时,传递的参数是一个执行

    2024年02月10日
    浏览(28)
  • 【js】js 异步机制详解 Generator / Async / Promise

    三种语法功能放在一起,是因为他们都有相似特点: 维护某种状态 在未来恢复状态并执行 本文重点回答以下几个问题: 为什么 Generator 和 Async 函数的 代码执行流 都可以简化成树形结构? async 函数为什么返回一个 promise?返回了怎样一个 promise? async 函数如何优雅的转换成

    2024年01月21日
    浏览(28)
  • Ajax异步通信与XMLhttpRequest对象的属性方法及事件

    AJAX 的英文全称 Asynchronous JavaScript And XML,其中Asynchronous就是指的异步,这里异步指通过 AJAX 向服务器请求数据,在不刷新整个页面的情况下,更新页面上的部分内容。 通过使用Ajax,可以创建更动态和响应性的Web应用程序,因为它使得页面可以在后台与服务器进行数据交换,

    2024年03月14日
    浏览(30)
  • 什么是Promise对象?它的状态有哪些?如何使用Promise处理异步操作?以及 async、await

    前端入门之旅:探索Web开发的奇妙世界 记得点击上方或者右侧链接订阅本专栏哦 几何带你启航前端之旅 欢迎来到前端入门之旅!这个专栏是为那些对Web开发感兴趣、刚刚踏入前端领域的朋友们量身打造的。无论你是完全的新手还是有一些基础的开发者,这里都将为你提供一

    2024年02月11日
    浏览(31)
  • AJAX 使用 JavaScript 的 `XMLHttpRequest` 对象来向服务器发送异步请求

    AJAX 是一种使用异步 HTTP (Ajax) 请求获取和发送数据的技术。它使得网页能够进行异步更新,而不需要重新加载整个页面。通过使用 AJAX,可以在不重新加载整个页面的情况下,与服务器交换数据并更新部分网页内容。 AJAX 使用 JavaScript 的 XMLHttpRequest 对象来向服务器发送异步请

    2024年01月16日
    浏览(41)
  • vue async await promise 等待异步接口执行完毕再进行下一步操作

    需求:上传多个文件,每上传一个文件异步请求一下后台接口,并返回一个新文件名,等把所有的异步接口执行成功后,将上传已成功后新文件名数组得到再去更新业务数据 uni-file-picker 文件上传组件的配置 选择文件后,上传到服务器后端,一个一个的传,等异步执行完一下

    2024年02月12日
    浏览(35)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包