• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >JavaScript > 3分钟掌握常用的JS操作JSON方法总结

3分钟掌握常用的JS操作JSON方法总结

作者:徐洁 字体:[增加 减小] 来源:互联网 时间:2017-05-11

徐洁通过本文主要向大家介绍了掌握科学学习方法,掌握多音字的好方法,掌握科学的工作方法,掌握了解学情的方法,语音语调的掌握方法等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

工作中做了几款自动化测试工具都是跟日志读取相关,日志格式又大多数都是JSON,所以这里把常用的JS操作JSON的方法做了总结~~

一、概要简介

JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,同时,JSON是 JavaScript 原生格式,这意味着在 JavaScript 中处理 JSON数据不须要任何特殊的 API 或工具包。

在JSON中,有两种结构:对象和数组

1、对象以“{”开始,“}”结束,“key/value”之间运用 “,”分隔。

 

2、数组以“[”开始,“]”结束。值之间运用 “,”分隔。

 

二、JSON对象和JSON字符串的转换

在数据传输过程中,JSON是以字符串的形式传递的,而JS操作的是JSON对象,所以,JSON对象和JSON字符串之间的相互转换是关键。如下:

JSON字符串:

 

JSON对象:

 

1、将String转化为JSON

 

2、将JSON转化为String

 

三、JSON的输出美化

上一节我们讲到了将JSON对象转化为JSON字符串可以用JSON.stringify() 方法,stringify还有个可选参数space(1<=space<=10),可以指定缩进的空格数,用于美化输出;

 

我们看下代码:

 

待美化的JSON:

 

美化后的输出,是不是看得更清晰了:

 

四、JSON字符串的替换

日志处理中常常有这样的字符串,如下:

 

需要经过替换后,才能变成标准的JSON字符串格式,从而转化成JSON对象。这里我们需要用JS实现replaceAll的功能,将所有的 ' \\" ' 替换成  ' " ' 。

代码如下,这里的gm是固定的,g表示global,m表示multiple:

 

替换后的效果如下:

 

五、遍历JSON对象和数组

1、遍历JSON对象,代码如下:

 

2、遍历JSON数组,代码如下:

 

六、递归遍历JSON对象

为了实现一些复杂功能常常需要递归遍历JSON对象,这里给出一个递归的例子,希望能给大家作为参考。

例子中要求处理JSON字符串,遇到数组的时候,数组中有超过一个对象,删除第一个对象之后的所有对象,假设原始JSON如下:

 

要求处理后的数组中只保留第一个对象,处理完成后应该如下图所示:

 

递归代码如下:

 

以上所述是小编给大家介绍的3分钟掌握常用的JS操作JSON方法总结,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 3分钟掌握常用的JS操作JSON方法总结

相关文章

  • 2017-05-11ng2学习笔记之bootstrap中的component使用教程
  • 2017-05-11使用nodejs下载风景壁纸
  • 2017-05-11jQuery实现鼠标经过显示动画边框特效
  • 2017-05-11jQuery多选框选择数量限制方法
  • 2017-05-11jquery 实时监听输入框值变化的完美方法(必看)
  • 2017-05-11最常见和最有用的字符串相关的方法详解
  • 2017-05-11JavaScript实现二分查找实例代码
  • 2017-05-11纯js实现html转pdf的简单实例(推荐)
  • 2017-05-11Angularjs 动态添加指令并绑定事件的方法
  • 2017-05-11从零开始学习Node.js系列教程一:http get和post用法分析

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • JavaScript实现的选择排序算法实例分析
    • JS实现的自动打字效果示例
    • 移动端web滚动分页的实现方法
    • Vue + Webpack + Vue-loader学习教程之功能介绍篇
    • JS批量替换内容中关键词为超链接
    • Vue.js bootstrap前端实现分页和排序
    • ES5 ES6中Array对象去除重复项的方法总结
    • JS原型与原型链的深入理解
    • JS实现列表页面隔行变色效果
    • JS正则表达式验证账号、手机号、电话和邮箱是否合法

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有