我是靠谱客的博主 从容火车,最近开发中收集的这篇文章主要介绍【JSON介绍】什么是JSON?,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

相关文章:

  1. 【JSON介绍】什么是JSON?
  2. 【Ajax】Ajax介绍
  3. 【Ajax】XMLHttpRequest介绍以及在前端如何实现Ajax
  4. 【Struts2】Sturts2如何实现JSON的数据输出,完成Ajax响应

写在前面 : JSON就是一种用于数据交换的格式语言,主要有两个结构,键值对和数组,通过一定的封装可以传输较为复杂的数据格式。

这里还有一份官方文档(中文)可供大家参考
不过我更推荐来自维基百科的JSON介绍

JSON简述

JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。 易于人阅读和编写。同时也易于机器解析和生成。 它基于JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 1999的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等)。 这些特性使JSON成为理想的数据交换语言。

JSON与XML比较

JSON与XML最大的不同在于XML是一个完整的标记语言,而JSON不是。这使得XML在程序判读上需要比较多的功夫。主要的原因在于XML的设计理念与JSON不同。XML利用标记语言的特性提供了绝佳的延展性(如XPath),在数据存储,扩展及高级检索方面具备对JSON的优势,而JSON则由于比XML更加小巧,以及浏览器的内建快速解析支持,使得其更适用于网络数据传输领域。

JSON建构于两种结构

  • “名称/值”对的集合(A collection of name/value pairs)。不同的语言中,它被理解为对象(object),纪录(record),结构(struct),字典(dictionary),哈希表(hash table),有键列表(keyed list),或者关联数组 (associative array)。
  • 值的有序列表(An ordered list of values)。在大部分语言中,它被理解为数组(array)。

名称/值 : {key:value}
数组:[value1,value2,value3]

JSON的语法

  • 对象是一个无序的“‘名称/值’对”集合。一个对象以“{”(左括号)开始,“}”(右括号)结束。每个“名称”后跟一个“:”(冒号);“‘名称/值’ 对”之间使用“,”(逗号)分隔。

例如:

{
    "code": 200,
    "msg": "成功"
}
  • 数组是值(value)的有序集合。一个数组以“[”(左中括号)开始,“]”(右中括号)结束。值之间使用“,”(逗号)分隔。

例如:

[1,2,3,4,5]

但是这种写法有时候单纯的看这个json无法正确的知道这个json的含义,所以一般这样写:

{
    "studentNumber": [
        1,
        2,
        3,
        4,
        5
    ]
}

代表这个数组传输的是学生的学号

一般情况下,我们会使用一些固定的格式来封装json,比如下面的这个格式:

{
    "code": 200,
    "msg": "成功",
    "data": [
        {
            "name": "name1",
            "email": "email1"
        },
        {
            "name": "name2",
            "email": "email2"
        },
        {
            "name": "name3",
            "email": "email3"
        }
    ]
}

可能大家第一眼看着这个JSON过于复杂,是不是在封装的时候需要很多代码才能完成。后面我会单独写一篇使用Google的Gson来完成这个JSON格式的封装。

最后

以上就是从容火车为你收集整理的【JSON介绍】什么是JSON?的全部内容,希望文章能够帮你解决【JSON介绍】什么是JSON?所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(65)

评论列表共有 0 条评论

立即
投稿
返回
顶部