zoukankan      html  css  js  c++  java
  • JSON的介绍与细节

    一、关于JSON

    JSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式。采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。

    在 JS 语言中,一切都是对象。因此,任何支持的类型都可以通过 JSON 来表示,例如字符串、数字、对象、数组等。

    JSON是完全独立于语言的文本格式,但使用C语言家族的程序员熟悉的约定,包括C,C ++,C#,Java,JavaScript,Perl,Python以及其他许多语言。这些属性使JSON成为理想的数据交换语言。

    JSON建立在两个结构上:

        1.名称/值对的集合。在各种语言中,这被实现为对象,记录,结构,字典,散列表,键控列表或关联数组。

        2.有序的值列表。在大多数语言中,这是作为数组,矢量,列表或序列实现的。

    这些是通用数据结构。几乎所有的现代编程语言都以不同的形式支持它们。有意义的是,与编程语言可互换的数据格式也基于这些结构。

    在JSON中,它们呈现如下形式:

         一个对象是一组无名的名称/值对。一个对象以 (左大括号)开始并以 (右大括号)结束每个名称后面跟着 (结肠)和名称/值对被分离的 (逗号)

    二.JSON的细节

    功能

    1 JSON格式化校验
    很多人在得到JSON数据后,一时没有办法判断JSON数据格式是否正确,是否少或多符号而导致程序不能解析,这个功能正好能帮助大家来完成JSON格式的校验。
    2 JSON视图
    想必很多程序员都会遇到当找一个节点的时候,会发现如果直接对着一行行数据无从下手,就算知道哪个位置,还要一个节点一个节点的往下找,万一一不留神又得从头开始找的麻烦事。
    有了这个功能,一切JSON数据都会变成视图格式,一目了然,什么对象下有多少数组,一个数组下有多少对象。这个功能非常实用。不光有视图功能还有格式化、压缩、转义、校验功能。总之很强大。
    3 压缩转义
    程序员在写JSON语句测试用例的时候,很多时候为了方便直接写了个JSON字符串做测试,但是又陷入了无止境的双引号转义的麻烦中。这款功能集压缩、转义于一身,让你在写测试用例的时候,如鱼得水。
    4 JSON在线编辑器
    如果你现在的电脑刚巧没有装你所熟悉的编辑器,如果你想针对拿到的JSON数据的某个节点做数据修改时,这个功能可以满足你的需求。
    5 在线发送JSON数据
    大家都知道,JSON用的最多的还是web项目的开发,那你要测试一个接口是否能准确的接受JSON数据,那你就得写一个页面发送JSON字符串,重复的做着这件事。随着这个功能的横空出世,你可以摆脱写测试页面了,因为这个功能可以将指定的JSON数据发送指定的url,方便吧。
    6 JSON着色
    很多人在写文档时,总希望文档能一目了然,但是面对着白底黑字的JSON数据总是提不起精神没关系,使用这个功能,所有的关键字都 [3]  会被着色,数据结构一目了然。
    7 JSON-XML互转
    顾名思义,将JSON格式的数据转化成XML [3]  格式、或者XML格式的数据转化成JSON格式,一切都不是问题。
    8 JSON-VIEW
    JSON查看实用工具,在开发过程中(windows平台中)可以对JSON数据进行格式化和视图显示。
    9 它和xml一样都是一种数据交换格式
     

    优势

    JSON:JavaScript 对象表示法(JavaScript Object Notation)。

    JSON 是存储和交换文本信息的语法。类似 XML。

    JSON 比 XML 更小、更快,更易解析。

    相比 XML 的不同之处

    • 没有结束标签
    • 更短
    • 读写的速度更快
    • 能够使用内建的 JavaScript eval() 方法进行解析
    • 使用数组
    • 不使用保留字

    为什么使用 JSON?

    对于 AJAX 应用程序来说,JSON 比 XML 更快更易使用:

    1.使用 XML

    • 读取 XML 文档
    • 使用 XML DOM 来循环遍历文档
    • 读取值并存储在变量中

    2.使用 JSON

    • 读取 JSON 字符串
    • 用 eval() 处理 JSON 字符串
  • 相关阅读:
    在CMD下如何搜索某个名字的文件?
    如何设置ESXi中的虚拟机随主机一同启动?
    ubuntu 安装 Cmake(转)
    unique_ptr与std::move的使用
    这是一份很详细的 Retrofit 2.0 使用教程(含实例讲解)(转)
    Tensorflow设置显存自适应,显存比例
    Protobuf学习
    tensorflow serving 打印调试log
    Linux下监视NVIDIA的GPU使用情况(转)
    tensorflow serving GPU编译问题
  • 原文地址:https://www.cnblogs.com/QQ1210611769/p/8916126.html
Copyright © 2011-2022 走看看