JSON 的深入理解
Posted 雪落无痕1
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JSON 的深入理解相关的知识,希望对你有一定的参考价值。
JSON 知识
JSON(javascript Object Notataion)javascript的对象表示形式,但是目前已经发展为一种轻量级的数据交互格式。
特点:完全独立于语言的文本格式,跨平台,有结构的,方便人和机器来解析。
使用场景
1.不同语言之间的数据传递(JSON就是String,但是它是有格式的),
前台Javascript 后台 java 注意不是一种语言,后台查询完数据库后,要把数据传递给前台,会将数据转化为List、Set、Map传递给前端。但是js 不识别。所以将后台的数据转换为JSON 然后前台才可以解析。后台List---->JSON 然后前台才可以解析。
2.SSH----->EasyUI|EXTJS|AJAX|
JSON 与XML ,properties 的区别:
1)JOSN 属于轻量级的,而XML 是重量级(标签描述过多)的(web.xml),目前XML一般用于框架的配置。
2)Josn 是有结构的,但是Properties 仅仅是key value(json 里面可以传对象。
3.自己的理解
既然都用json 交换数据了,为什么还要到前端转换为对象,就是为了点属性好用么?
Json 不转换为对象没有办法拿到你想要的,那么一大串。
可不可以直接传输对象呢?
如果传递对象需要序列化,接收对象需要反序列化,比较麻烦。
跨平台的理解?
Java 对象如何给JS 就需要做成大家都认识的格式。
Java 对象只有Java 认识,js 对象只有JS 认识,但是Json 是
JAVA 和js 都认认识的,只有都认识的二种语言之间才可以交互。
从数据库中查到的数据格式是什么?Json 字符串还是对象。
你从数据拿到手之前,已经被包装过了,可能是XML ,也可能是json ,二进制等, 要看底层用什么传输协议。
4.JSON具有以下这些形式:
对象(object) 是一个无序的“‘名称/值’对”集合。一个对象以“{”(左括号)开始,“}”(右括号)结束。每个“名称”后跟一个“:”(冒号);“‘名称/值’ 对”之间使用“,”(逗号)分隔。
数组(array) 是值(value)的有序集合。一个数组以“[”(左中括号)开始,“]”(右中括号)结束。值之间使用“,”(逗号)分隔。
值(value) 可以是双引号括起来的字符串(string)、数值(number)、true、false、 null、对象(object)或者数组(array)。这些结构可以嵌套。
以上是关于JSON 的深入理解的主要内容,如果未能解决你的问题,请参考以下文章