我们在前端开发过程中,通过服务器获取数据的时候服务器返回的数据通常为JSON格式,今天小千就来教大家如何利用JavaScript解析服务器的响应获取我们想要的数据。

该过程通常包括两个步骤:将数据解码为本机结构(例如数组或对象),然后使用JavaScript的内置方法遍历该数据结构。

一、从远程API获取接口

1、使用XMLHttpRequest API

返回的数据为:

// string

// {“id”:“helloworld”,“joke”:“today is Friday!”,“status”:200}

服务器返回了一个字符串。我们需要先将其解析为JavaScript对象,然后才能遍历其属性。我们可以使用JSON.parse()做到这一点,如下显示:

2、使用Fetch API

尽管上面使用XMLHttpRequest对象的方法效果很好,但在复杂的场景下它就会变得非常笨拙。下面我们使用浏览器新提供的api,它是window对象上定义的方法fetch,你可以使用该方法执行请求。此方法返回一个Promise,可用于检索请求的响应。

Fetch API返回响应流。这不是JSON,因此JSON.parse()需要尝试使用它的response.json()函数而不是对其进行调用。这将返回一个Promise,该Promise会将响应的正文文本解析为JSON的结果进行解析。

二、多种方式遍历数据

1、使用for…in

2、使用Object.entries,Object.values或Object.entries

3、处理数组

值的有序列表(也称为数组)也是有效的JSON,让我们研究如何处理此类响应。

对于这个示例,我们将使用GitHub的REST API来获取用户存储库的列表:

如您所见,API返回了一个对象数组。要访问每个单独的对象,我们可以使用常规forEach方法:

另外,您当然可以使用上面讨论的任何方法来遍历对象的所有属性,并将它们记录到控制台:

结论

在这篇文章中,我们研究了什么是JSON。我已经演示了如何将服务器的JSON响应解析为本机数据结构(例如数组或对象),以及如何遍历这种结构以访问其中包含的数据。我们大部分web服务与服务器的交互都是围绕这个这个展开,希望这篇文章对您有所帮助。

本文来自千锋教育,转载请注明出处。

JavaScript中循环遍历JSON响应!相关推荐

  1. JavaScript中循环遍历JSON响应

    我们在前端开发过程中,通过服务器获取数据的时候服务器返回的数据通常为JSON格式,今天小千就来教大家如何利用JavaScript解析服务器的响应获取我们想要的数据. 该过程通常包括两个步骤:将数据解码 ...

  2. 如何在JavaScript中循环遍历JSON响应

    从远程服务器获取数据时,服务器的响应通常为JSON格式.在本文中,我将演示如何使用JavaScript解析服务器的响应,以便访问所需的数据.该过程通常包括两个步骤:将数据解码为本机结构(例如数组或对象 ...

  3. 如何在JavaScript中循环遍历JSON响应?

    从远程服务器获取数据时,服务器的响应通常为JSON格式.在本文中,我将演示如何使用JavaScript解析服务器的响应,以便访问所需的数据.该过程通常包括两个步骤:将数据解码为本机结构(例如数组或对象 ...

  4. JS中循环遍历JSON格式数据

    //res为json格式数据 if (res != null) { //循环遍历resfor (var key in res) { //遍历中key为字段名的字符串,如{"a":& ...

  5. 在js中循环遍历json对象

    一.遍历普通的jsonArray <script>var data=[{"name":"a","age":12},{" ...

  6. js 数组遍历符合条件跳出循环体_在JavaScript中循环遍历数组

    你有几个选择: 1.顺序for循环: var myStringArray = ["Hello","World"]; var arrayLength = mySt ...

  7. 中的枚举属性函数_对于 JavaScript 中循环之间的技术差异分析

    在 JavaScript 中使用循环时,需要理解两个关键点:可枚举的属性和可迭代的对象. 可枚举的属性 可枚举对象的一个定义特征是,当通过赋值操作符向对象分配属性时,我们将内部 enumerable ...

  8. ajax如何循环lis,关于js中循环遍历中顺序执行多个嵌套ajax的问题

    就是业务上需要完成一个功能,这个功能需要依次调用四个接口,后面接口的参数都依赖于前一个接口的返回值. 类似这样: var objArr = "从其他逻辑获得"; for(var n ...

  9. html js 循环取json数据,JS循环遍历JSON数据的方法

    JS循环遍历JSON数据 本文提供了 JS 循环 JSON 数据列,以及 JS 循环遍历 JSON 数据的例子,供大家学习参考. 1. json数据的列循环 var len = json.length ...

最新文章

  1. pbs分解_UML使用产品分解结构(PBS)教程
  2. iOS安全之class-dump的安装和使用
  3. CGAN生成cifar10, cifar100, mnist, fashion_mnist,STL10,Anime图片(pytorch)
  4. 用Python操作Redis
  5. 干净的停止tomcat/java应用程序
  6. windbg调试堆破坏
  7. RichTextBox 右键显示 ContextMenuTrip
  8. 1.对程序的看法 2013.8.1
  9. 单链表排序(冒泡排序)(C语言)
  10. matlab里调节触发角度,电机与拖动基础及MATLAB仿真陈亚爱第4章直流电机.ppt
  11. excel合并两列内容_WPS-excel简单将几个单元格的内容合并到一起
  12. CAN硬件过滤器的使用(32位宽掩码模式扩展帧)
  13. python rsa模块学习笔记
  14. 利用反射动态修改 EasyPoi 导出Excel表格标题名称
  15. ARM STMFD, STMFA, STMED, STMEA, LDMFD, LDMFA, LDMED, LDMEA
  16. vue——数字加逗号分隔
  17. nginxgrafana监控面板显示nodatatoshow
  18. CCD摄像头相关知识
  19. CoffeeScript快速入门
  20. day07 hdfs

热门文章

  1. HihoCode1032 最长回文子串 manacher算法
  2. android camera 3a,买相机送手机 pixel 3a 上手体验
  3. Java后端学习路线6大维度详细总结(编程基础+开发工具+应用框架+运维知识+成神之路+平稳降落)【可作为知识点梳理列表】【点击可查看高清原图】
  4. java支持接口吗_java – 支持专用接口方法
  5. oracle 按月累计求和,SQL Cumulative Sum累积求和
  6. 算法系列之赫夫曼编码实战一【数据压缩、数据解压】
  7. Game with string
  8. bearBaby loves sleeping
  9. 1作业python数据类型 条件循环 列表
  10. JavaWeb-综合案例(用户信息)-学习笔记05【分页查询功能】