个人对JSON的理解

原创 2018年04月17日 15:33:56

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

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

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


1、语法

    JSON语法是JavaScript对象表示语法的子集。    

        1)、数据在名称/值对中

        2)、数据由逗号分隔

        3)、大括号保存对象

        4)、中括号保存数组

    JSON的语法可以表示以下三种类型的值。

        1)、简单值:可以再JSON中表示字符串、数值、布尔值和null。但是不支持undefined。(JSON字符串必须使用双引号)

5  //JSON表示数值5
"Hello world"  //JSON字符串

        2)、对象:表示的是一组无序的键值对儿。(JSON中对象的属性名任何时候都必须加双引号)

{
    "name":"LuckyFBB",
    "age":18,
    "school":{//在对象之中嵌入对象
        "name":"College",
        "location":"China"
    }
}

            用for-in来循环对象属性

var info={
    "name":"LuckyFBB",
    "age":18,
    "city":"Chong qing"
}
for(x in info){
    alert(x+":"+info[x]);//x为属性,info[x]为属性值
}

        3)、数组:表示的是一组有序的是的列表。

[
    {
        "name":"LuckyFBB",
        "age":18,
        "school":{//在对象之中嵌入对象
            "name":"College",
            "location":"China"
        }
    },
    {
        "name":"FBB",
        "age":18,
        "school":{//在对象之中嵌入对象
            "name":"College",
            "location":"China"
        }
    },
    {
        "name":"Lucky",
        "age":18,
        "school":{//在对象之中嵌入对象
            "name":"College",
            "location":"China"
        }
    }
]

2、解析与序列化

    JSON之所以流行拥有与JavaScript类似的语法并不是全部原因。更重要的一个原因是,可以把JSON数据结构解析为有用的JavaScript对象。与XML数据结构要解析成DOM文档而且从中提取数据极为麻烦相比,JSON可以解析为JavaScript对象的优势极其明显。

    JSON对象有两个方法:stringify()和parse()。在最简单的情况下,这两个方法分别用于把JavaScript对象序列化为JSON字符串和把JSON字符串解析为原生JavaScript值。

var info={
    "name":"LuckyFBB",
    "age":18,
    "city":"Chong qing"
}
var infoText=JSON.stringify(info);//"{"name":"LuckyFBB","age":18",city":"Chong qing"}"
var infoCopy=JSON.parse(infoText);//Object {name: "LuckyFBB", age: 18, city: "Chong qing"}

    stringify()可以 接受两个参数,第一个参数是个过滤器(可以数组也可以是函数),第二个参数是一个选项,表示JSON字符串中保留缩进。

    数组:

var info={
    "name":"LuckyFBB",
    "age":18,
    "city":"Chong qing"
}
var infoText=JSON.stringify(info,["name","age"];


本人正在学习和摸索中,如有错误,欢迎指正!

对json的理解

以前老师说了一句Java格式的json转换成js格式的json,我从那一直开始纠结,json既然是数据交换语言,格式都一样怎么还有语言之分的?纠结至今,发现,还是之前的学习资料有缺陷,没有详细讲解js...
  • qq_32528231
  • qq_32528231
  • 2016-10-10 23:43:42
  • 5697

浅谈json

前言         做了那么久项目了,但是总感觉自己像是什么都没做一样,因为项目里很多东西都没有去了解总结。在审批系统中,从头到尾都得我们自己整,所以现在回来很多东西都需要自己去理解总结了。 浅...
  • u013044029
  • u013044029
  • 2016-09-28 11:51:28
  • 838

关于JSON理解和用法

一、JSON是什么? JSON的全称是 JavaScript Object Notation ,我直译为JS对象标记,它是基于JavaScript的一个子集,采用独立于语言的文本格式,成为了一种理想的...
  • u012906135
  • u012906135
  • 2015-04-09 22:35:24
  • 508

深入理解JSON

文章声明:本文是在某APP上看到的一位程序员发表的文章所做的笔记,无法帖地址,在此说明。 JSON我们都不陌生,但是你真正的了解过JSON么?它是什么?为什么说它是轻量级的数据交换格式以及它的工作方...
  • navigatorOpera
  • navigatorOpera
  • 2017-03-26 23:40:41
  • 463

对java的粗浅理解

 随着时间的推移,不觉间接触java也有好几个年头了,在这期间接触过很多人,也做过很多项目,也面了很多试,下面是鄙人对java的一些粗浅的认识和感悟吧,也许说的不是很对,只是自己的一些记录吧,希望各位...
  • lbd_123
  • lbd_123
  • 2018-04-09 10:13:00
  • 36

个人对B树的理解

前言动态查找树有多种,二叉查找树、平衡二叉查找树、红黑树等。这些树的时间复杂度都为O(log2H),和树的深度有关,所以减小树的深度就可以提升查找的性能。由此就诞生了B树。定义B树,又称平衡多叉查找树...
  • WhenJay
  • WhenJay
  • 2018-04-08 17:30:40
  • 15

对JSON的理解以及一些应用

工作以来,代码开发上接触的比较多的是JSON格式的数据,并且昨天遇到了JSON上的一点问题以及疑惑,在此记录一下自己对JSON 的理解与思考 1.什么是JSON JSON,是一种轻量级数据交换格式。以...
  • biorson
  • biorson
  • 2017-09-22 16:10:18
  • 129

个人对贪心的理解

个人对贪心的一些想法。 首先 , 贪心说到底,一种思想。 它给人的一种感觉就是,从局部最优到达整体最优, 也就是给人感觉 在当前的状态,我不需要去考虑 整体的状况,我只需要每次去选择最优...
  • qq_38898022
  • qq_38898022
  • 2017-07-28 10:28:18
  • 89

关于dubbo理解

Dubbo就是资源调度和治理中心的管理工具。 打个比喻 provider 就是房东 consumer就是租客 register就是房产中介         房东想要出租房...
  • u011277745
  • u011277745
  • 2017-05-26 22:57:53
  • 93
收藏助手
不良信息举报
您举报文章:个人对JSON的理解
举报原因:
原因补充:

(最多只允许输入30个字)