当前位置:首页 > 日记 > 正文

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

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

工作中做了几款自动化测试工具都是跟日志读取相关,日志格式又大多数都是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方法总结,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!

相关文章

在Excel2016表格中怎么以只读方式

在Excel2016表格中怎么以只读方式

只读,表格,方式,电脑软件,  Excel2016表格编辑软件中,可以使用以只读方式打开Excel工作表,对表格文件单纯的进行阅读,而不进行修改。以下是小编为您带来的关于Excel2016表格以只读方式打开,希望对您有所帮助。Excel2016表格以只读方式打开1、…

excel中文字换行的教程

excel中文字换行的教程

文字,教程,换行,电脑软件,excel,  Excel中的文字经常需要用到换行功能,具体该如何换行呢?下面是小编带来的关于excel中文字换行的教程,希望阅读过后对你有所启发!excel中文字换行的教程:  文字换行步骤1:如下图所示的表格,C2中内容很长,现在…

Javascript操作dom对象之select全

Javascript操作dom对象之select全

对象,操作,电脑软件,Javascript,select,html代码:  <select id="university"><option value="北京大学">北京大学</option><option value="清华大学">清华大学</option><option value="北京电影学院">北京电影学院</option></sele…

怎么将表格内容复制到word中将表格

怎么将表格内容复制到word中将表格

步骤,方法,表格,内容,中将,  很多人日常工作中,在使用办公软件时,会遇到excel表格内的内容无法快速复制到word中,那有没有方便快速的方法呢?那么下面就由小编给大家分享下将表格内容复制到word中的技巧,希望能帮助到您。将表格内容复制到word…

在Excel2010文档中加密的方法是什

在Excel2010文档中加密的方法是什

文档,方法,加密,电脑软件,  Excel2010文档加密方法,是对文件一种保护的重要作用,如果有一天文件被他人窃取的时候,我们还能起到一定的保护作用。以下是小编为您带来的关于Excel2010文档加密方法,希望对您有所帮助。Excel2010文档加密方法1:新…

前端开发之CSS原理详解

前端开发之CSS原理详解

前端开发,详解,原理,电脑软件,CSS,前端开发之CSS原理详解 从事Web前端开发的人都与CSS打交道很多,有的人也许不知道CSS是怎么去工作的,写出来的CSS浏览器是怎么样去解析的呢?当这个成为我们提高CSS水平的一个瓶颈时,是否应该多了解一下呢?一、…

Vue仿手机qq的实例代码 | demo

Vue仿手机qq的实例代码 | demo

实例代码,电脑软件,Vue,qq,demo,vue简介Vue.js(读音 /vju?/, 类似于 view) 是一套构建用户界面的渐进式框架。Vue 只关注视图层, 采用自底向上增量开发的设计。Vue 的目标是通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件。Vue 学…

怎么在word给指定段落添加边框在wo

怎么在word给指定段落添加边框在wo

边框,步骤,方法,段落,电脑软件,  在word2007使用过程中,为了使文档中的某些段落看起来更加醒目,我们可以为这些段落添加边框。下面小编就教你怎么在word给指定段落添加边框。word给指定段落添加边框的步骤1,打开需要处理的文档文件。word给…

从零开始学习Node.js系列教程五:服

从零开始学习Node.js系列教程五:服

服务器,教程,学习,方法,示例,本文实例讲述了Node.js服务器监听方法。分享给大家供大家参考,具体如下:httpsnifferInvoke.jsvar http = require('http');var sniffer = require('./httpsniffer');var server = http.createServer(function…

ES6新特性六:promise对象实例详解

ES6新特性六:promise对象实例详解

新特性,对象,详解,实例,电脑软件,本文实例讲述了ES6新特性之promise对象。分享给大家供大家参考,具体如下:1. promise 介绍它是一个对象,也就是说与其他JavaScript对象的用法,没有什么两样;其次,它起到代理作用(proxy),充当异步操作与回调函数之间的…

怎么在ppt2013中设置文本虚线框

怎么在ppt2013中设置文本虚线框

设置,文本,虚线,方法,电脑软件,  PPT演讲的成功,不单单是取决于PPT使用和制作技术方面的技巧,还有制作思路方面的学问、演讲方法与技巧等诸多方面。PPT演讲的成功,不单单是取决于PPT使用和制作技术方面的技巧,还有制作思路方面的学问、演…

ECMAScript6--解构

ECMAScript6--解构

电脑软件,大致介绍解构:就是将声明的一组变量和与相同结构的数组或者对象的元素数值一一对应,并将变量相对应元素进行赋值数组解构例子:let [a,b,c] = [1,2,3]; console.log(a); //1 console.log([a,b,c]); //[1, 2, 3]可以看到,数组中的a,b,c…