json数据简述

json数据

Json是互联网上结构化数据的传输标准;javascript,php等语言对其支持度都很好。

Json最重要的一点是小巧轻便,便于数据的传输,无关乎语言,php里可用json_decode和json_encode函数进行json数据的解析与序列化。(解析既把json数据转换为便于操作的类型比如数组,序列化则把便于操作的数据类型转化为json数据)。

下面讲讲js里面的json:

Json数据类型有三种:

1.简单值。简单值就是串数字或者字符,但字符必须用双引号引起,单引号会出错,如下数值量:5字符量:”this is json string”

2.对象。结构如下

{

“key1”:”value1”,

“key2”:”value2”

}

属性名必须用双引号引起,值为字符类型时也必须用双引号;同一对象中不能出现相同的属性如

{

“key2”:”value2”,

“key2”:”value2”

}

这是不被允许的

3.数组。结构如下

[

{

“key1”:”value1”,

”key2”:”value2”

},

{

“key1”:”value1”

},

{

“key1”:”value1”

},

]

json数据的应用主要是对象与数组类型结合起来传输复杂的数据

Json数据的解析与序列化:

先看代码

var user = {

"source" : {

"sname" : "javascript高级程序设计",

"id" : "11",

"price" : "59"

},

"person" : {

"uname" : "梁",

"uid" : "18",

"age" : "20"

}

};/*此分号为js的语句结束符,json里是没有的*/

var json1 = JSON.stringify(user,["source"]);

/* json1输出为{"source":{}}*/

json2=JSON.stringify(user);

/*json2={"source":{"sname":"javascript高级程序设计","id":"11","price":"59"},"user":{"uname":"梁","uid":"18","age":"20"}}*/

json3 = JSON.stringify(user,null,4);

/*

json3输出如下:

{

"source": {

"sname": "javascript高级程序设计",

"id": "11",

"price": "59"

},

"user": {

"uname": "梁",

"uid": "18",

"age": "20"

}

}

*/

var arr = JSON.parse(json1);

/*对json1,json2,json3进行typeof操作得到string类型,对arr进行typeof操作得到object类型而user本身也是object类型*/

/*现在可以访问arr里面的数据了,和访问user内部数据的方法完全相同了*/

解析:JSON.parse(),解析为数组对象。可以有两个参数,第一个为json数据,第二个为一个有两个参数(key,value)的函数,key为值接受json数据里的key值,value为相应的value值,且函数需要有返回值,否则所有删除json数据中相对的值

序列化:JSON.stringify();接受三个参数,第一个为要序列化的对象(必须),第二个为可选的过滤参数(把key不等于数组里值全部过滤,json1里的user就被过滤了)也可以是数组也可以是上述所说的有两个参数的函数类型,第三个参数为字符串缩进,值为0~10

Json做为一种数据格式,用起来确实挺方便,国创时做的事手机app,客户端与服务器之间的数据交换就是用json格式进行的,并且php里把数组转换为json特特别容易,但需留意的是json只接受utf8格式的数据,其它格式不能正确转换

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,179评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,229评论 2 380
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,032评论 0 336
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,533评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,531评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,539评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,916评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,574评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,813评论 1 296
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,568评论 2 320
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,654评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,354评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,937评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,918评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,152评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,852评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,378评论 2 342

推荐阅读更多精彩内容

  • 一般的处理方式: 网络请求->拿到返回数据(目前比较流行的跨平台格式语言为json)->根据返回数据生成数据模型类...
    candyGU阅读 3,494评论 0 3
  • 最近学习redis,记录一下 redis官网:redis.io 中文官网:http://www.redis.net...
    alexpdh阅读 1,854评论 0 1
  • 一、iOS 4种JSON数据解析方法详解 2013年09月10日⁄ 综合⁄ 共 9124字⁄ 字号小中大⁄评论关闭...
    lilinjianshu阅读 2,035评论 0 2
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,580评论 18 139
  • JSON的特点: JSON数据格式(JSON对象、JSON数组): 1、JSON对象:{ } 结构:{key1:v...
    gogoingmonkey阅读 2,438评论 0 5