JavaScript JSON数据处理全集(小结)

 更新时间:2019年08月15日 16:23:31   作者:boonya  
这篇文章主要介绍了JavaScript JSON数据处理全集,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

JSON 语法

JavaScript 对象表示语法的子集。

  • 数据在名称/值对中
  • 数据由逗号分隔
  • 大括号保存对象
  • 中括号保存数组

JSON 取值类型

  • 数字(整数或浮点数)
  • 字符串(在双引号中)
  • 逻辑值(true 或 false)
  • 数组(在中括号中)
  • 对象(在大括号中)
  • null

 JSON对象

{ "name":"boonya", "alexa":10000, "site":null }

JSON 对象使用在大括号({})中书写。

对象可以包含多个 key/value(键/值)对。

key 必须是字符串,value 可以是合法的 JSON 数据类型(字符串, 数字, 对象, 数组, 布尔值或 null)。

key 和 value 中使用冒号(:)分割。

每个 key/value 对使用逗号(,)分割。

JSON 数组

[ "Google", "Tencent", "Taobao" ]
或
[ {"name":"Google"},{"name": "Tencent"}, {"name":"Taobao"} ]
或
{
 "data":[ {"name":"Google"},{"name": "Tencent"}, {"name":"Taobao"} ]
}

JSON 数组在中括号中书写。

JSON 中数组值必须是合法的 JSON 数据类型(字符串, 数字, 对象, 数组, 布尔值或 null)。

JavaScript 中,数组值可以是以上的 JSON 数据类型,也可以是 JavaScript 的表达式,包括函数,日期,及 undefined

JSON字符串数据转对象:JSON.parse()

JSON 通常用于与服务端交换数据。

在接收服务器数据时一般是字符串。

我们可以使用 JSON.parse() 方法将数据转换为 JavaScript 对象。

JSON.parse(text[, reviver])

参数说明:

  • text:必需, 一个有效的 JSON 字符串。
  • reviver: 可选,一个转换结果的函数, 将为对象的每个成员调用此函数。

对象转字符串JSON数据:JSON.stringify()

JSON 通常用于与服务端交换数据。

在向服务器发送数据时一般是字符串。

我们可以使用 JSON.stringify() 方法将 JavaScript 对象转换为字符串。

JSON.stringify(value[, replacer[, space]])

参数说明:

  • value:

必需, 要转换的 JavaScript 值(通常为对象或数组)。

  • replacer:

可选。用于转换结果的函数或数组。

如果 replacer 为函数,则 JSON.stringify 将调用该函数,并传入每个成员的键和值。使用返回值而不是原始值。如果此函数返回 undefined,则排除成员。根对象的键是一个空字符串:""。

如果 replacer 是一个数组,则仅转换该数组中具有键值的成员。成员的转换顺序与键在数组中的顺序一样。当 value 参数也为数组时,将忽略 replacer 数组。

  • space:

可选,文本添加缩进、空格和换行符,如果 space 是一个数字,则返回值文本在每个级别缩进指定数目的空格,如果 space 大于 10,则文本缩进 10 个空格。space 也可以使用非数字,如:\t。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • js canvas实现画图、滤镜效果

    js canvas实现画图、滤镜效果

    这篇文章主要为大家详细介绍了js canvas实现画图、滤镜效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-11-11
  • Bootstrap table分页问题汇总

    Bootstrap table分页问题汇总

    这篇文章主要为大家汇总了Bootstrap table分页的典型问题,以及对应每个bootstrap table分页问题的解决方法,感兴趣的小伙伴们可以参考一下
    2016-05-05
  • 微信小程序实现动态获取元素宽高的方法分析

    微信小程序实现动态获取元素宽高的方法分析

    这篇文章主要介绍了微信小程序实现动态获取元素宽高的方法,结合实例形式分析了微信小程序动态获取、设置元素宽高的相关操作技巧与注意事项,需要的朋友可以参考下
    2018-12-12
  • JS跳出循环的方法区别对比分析(break,continue,return)

    JS跳出循环的方法区别对比分析(break,continue,return)

    面向对象编程语法中我们会碰到break ,continue, return这三个常用的关键字,那么关于这三个关键字的使用具体的操作是什么呢?接下来通过本文给大家讲解JS跳出循环的方法区别对比分析(break,continue,return),感兴趣的朋友一起看看吧
    2023-02-02
  • JS 数字转换研究总结

    JS 数字转换研究总结

    这篇文章主要介绍了JS 数字转换实现方法,需要的朋友可以参考下
    2013-12-12
  • Javascript数组的 forEach 方法详细介绍

    Javascript数组的 forEach 方法详细介绍

    这篇文章主要介绍了Javascript数组的forEach方法详细介绍,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-09-09
  • js通过Date对象实现倒计时动画效果

    js通过Date对象实现倒计时动画效果

    这篇文章主要为大家详细介绍了js通过Date对象实现倒计时动画效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-10-10
  • JS实现三个层重叠点击互相切换的方法

    JS实现三个层重叠点击互相切换的方法

    这篇文章主要介绍了JS实现三个层重叠点击互相切换的方法,涉及JavaScript动态操作页面定位属性的相关技巧,需要的朋友可以参考下
    2015-10-10
  • JavaScript 字符串与数组转换函数[不用split与join]

    JavaScript 字符串与数组转换函数[不用split与join]

    下面的代码,不考虑他的运行效率的话,思路不错,大家可以看看,但在实际的应用中,我们仍然使用split或join来实现数组的操作。
    2009-12-12
  • 一道JS前端闭包面试题解析

    一道JS前端闭包面试题解析

    这篇文章主要针对一道JS前端闭包面试题进行解析,从例题出发详细介绍JS前端闭包相关知识,感兴趣的小伙伴们可以参考一下
    2015-12-12

最新评论