JSON数据格式介绍

JSON使用示例 这个示例中,有一个名为"person"的对象,包含了人物的姓名(name)、年龄(age)和所在城市(city)。这个示例中,有一个名为"person"的对象,其中包含了姓名和爱好属性。爱好属性的值是一个包含了三个爱好的数组。这个示例中,有一个名为"fruits"的数组,其中包含了三个水果:apple、banana和orange。这个示例中,有一个名为"students"的数组,其中包含了两个学生对象,每个学生对象都有姓名和年龄属性。这个示例中,有一个名为"data"的数组,其中包含了两个子数组。 阅读详情

 JSON定义

          JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,易于阅读和编写,同时也易于机器解析和生成。它基于ECMA262语言规范(1999-12第三版)中JavaScript编程语言的一个子集。JSON采用与编程语言无关的文本格式,但是也使用了类C语言(包括C, C++, C#, Java, JavaScript, Perl, Python等)的习惯,这些特性使JSON成为理想的数据交换格式。

1. "名称/值"对的集合不同语言中,它被理解为对象(object),记录(record),结构(struct),字典(dictionary),哈希表(hash table),键列表(keyed list)等

2. 值的有序列表 多数语言中被理解为数组(array)

JSON使用:
JSON以一种特定的字符串形式来表示 JavaScript 对象。如果将具有这样一种形式的字符串赋给任意一个 JavaScript 变量,那么该变量会变成一个对象引用,而这个对象就是字符串所构建出来的,好像有点拗口,我们还是用实例来说明。
这里假设我们需要创建一个User对象,并具有以下属性

用户ID
用户名
用户Email
您可以使用以下JSON形式来表示User对象:

{"UserID":11, "Name":"Truly", "Email":"zhuleipro◎hotmail.com"};然后如果把这一字符串赋予一个JavaScript变量,那么就可以直接使用对象的任一属性了。

完整代码:

<script>
        var User = {"UserID":11, "Name":"Truly", "Email":"zhuleipro◎hotmail.com"};
        alert(User.Name);
</script>

实际使用时可能更复杂一点,比如我们为Name定义更详细的结构,使它具有FirstName和LastName:

{"UserID":11, "Name":{"FirstName":"Truly","LastName":"Zhu"}, "Email":"zhuleipro◎hotmail.com"}完整代码:

<script>
        var User = {"UserID":11, "Name":{"FirstName":"Truly","LastName":"Zhu"}, "Email":"zhuleipro◎hotmail.com"};
        alert(User.Name.FirstName);
</script>

现在我们增加一个新的需求,我们某个页面需要一个用户列表,而不仅仅是一个单一的用户信息,那么这里就需要创建一个用户列表数组。
下面代码演示了使用JSON形式定义这个用户列表:

[
{"UserID":11, "Name":{"FirstName":"Truly","LastName":"Zhu"}, "Email":"zhuleipro◎hotmail.com"},
{"UserID":12, "Name":{"FirstName":"Jeffrey","LastName":"Richter"}, "Email":"xxx◎xxx.com"},
{"UserID":13, "Name":{"FirstName":"Scott","LastName":"Gu"}, "Email":"xxx2◎xxx2.com"}
]
完整代码:

<script>
        var UserList = [
                                 {"UserID":11, "Name":{"FirstName":"Truly","LastName":"Zhu"}, "Email":"zhuleipro◎hotmail.com"},
                                 {"UserID":12, "Name":{"FirstName":"Jeffrey","LastName":"Richter"}, "Email":"xxx◎xxx.com"},
                                 {"UserID":13, "Name":{"FirstName":"Scott","LastName":"Gu"}, "Email":"xxx2◎xxx2.com"}
                            ];
alert(UserList[0].Name.FirstName);
</script>

事实上除了使用"."引用属性外,我们还可以使用下面语句:

alert(UserList[0]["Name"]["FirstName"]); 或者 alert(UserList[0].Name["FirstName"]);

现在读者应该对JSON的使用有点认识了,归纳为以下几点:

对象是属性、值对的集合。一个对象的开始于“{”,结束于“}”。每一个属性名和值间用“:”提示,属性间用“,”分隔

数组是有顺序的值的集合。一个数组开始于"[",结束于"]",值之间用","分隔。
值可以是引号里的字符串、数字、true、false、null,也可以是对象或数组。这些结构都能嵌套。

字符串和数字的定义和C或Java基本一致。
小节:

本文通过一个实例演示,初步了解了JSON 的强大用途。可以归结如下:

JSON 提供了一种优秀的面向对象的方法,以便将元数据缓存到客户机上。

JSON 帮助分离了验证数据和逻辑。
JSON 帮助为 Web 应用程序提供了 Ajax 的本质。

参考资料:
http://www.json.org/

 

本文来自优快云博客,转载请标明出处:http://blog.youkuaiyun.com/eroswang/archive/2009/10/08/4643680.aspx

 

 

JSON实例操作 < h2 > JavaScript 创建 JSON 对象 < p > 网站名称: < span id = " jname " > < br /> 网站地址: < span id = " jurl " > < br /> 网站 slogan: < span id = " jslogan " > < br /> 阅读详情

相关推荐

JSON使用及解析详解

本文介绍了JSON格式及其C++解析技术。JSON作为一种轻量级数据交换格式,具有易读易写、跨语言等优势,已成为现代开发中的事实标准。文章对比了JSON与XML的特点及适用场景,重点讲解了C++中高效解析JSON的方法,特别是nlohmann/json库的使用技巧,包括安装配置、基本操作、性能优化和异常处理等。通过多个实战示例展示了从简单到复杂场景的JSON解析方案,并提供了自定义类型转换、内存管理等高级技巧。最后总结了JSON解析的最佳实践和常见问题解决方案,帮助开发者在不同场景下选择最优的JSON处理方

程序猿老樊的博客 1984

JSON数据格式

{“Name”:“张三”,“Age”:“18”,“Address”:“河南”,“BookList”:[{“BookName”:“js”},{“BookName”:“c#”}]}[{“Name”:“张三”,“Age”:“18”,“Address”:“河南”},{“Name”:“李四”,“Age”:“20”,“Address”:“河北”}]{“key”:“value”}最简单的json格式 花括号包裹表示这是一个JSON对象 通过键值对进行组合 key:value。JSON:是一种轻量级的数据传输格式。

m0_46454966的博客 1万+

配置xen上VM混杂模式,使其能捕获物理网络流量

本文目的:配置VM和xen相应的物理网卡(pif)和虚拟网卡(vi

LeoDuo的专栏 3720

json数据

一个api接口调用post请求 import urllib2,json url='http://xxx.xxx.com.cn/api/v1' data=json.dumps({'organId':'1'}) #数据 headers={'Content-Type':'application/json'} #头部 request = urllib2.Request(url,data,headers) #urllib2用一个Request对象来映射你提出的HTTP

owlcity123的博客 5879

Argoverse2数据集保姆级导入教程:从下载到预处理全流程解析

本文详细解析了Argoverse2数据集的完整导入流程,从环境配置、数据下载到预处理和高效加载策略。作为自动驾驶领域的标杆数据集,Argoverse2提供多模态传感器数据和高精地图信息,帮助研究者快速搭建数据处理流水线。文章包含实用代码示例和性能优化技巧,特别适合自动驾驶算法开发者参考。

weixin_29035405的博客 336

NR/5G - On demand SI

NR中系统消息如MIB -可用于无线帧同步等,SIB1 -小区物理信道公共配置等,是驻留一个小区所必需获得的信息,这类系统信息小区是进行周期性广播。 在SI的配置中,系统消息分为BroadCasting和non-BroadCasting,BroadCasting类系统消息基站也是周期性进行广播的,而non-BroadCasting类系统消息则是通过一种on-demand的方式,即如果需要读取这类系统消息,那么UE需要先发送请求给基站,基站响应UE之后,再下发系统消息。 ...

6775

【知识科普】JSON数据格式详细介绍

JSON是一种轻量级数据交换格式,基于JavaScript对象语法,但独立于语言。它由对象(无序键值对集合)和数组(有序值列表)两种基本结构组成,支持字符串、数字、布尔值、null、对象和数组等数据类型。JSON语法严格:键必须用双引号,不支持注释和JavaScript特有类型。相比JavaScript对象,JSON更规范统一,适合跨平台数据交换,广泛应用于API通信、配置文件和NoSQL数据库等场景。其简洁的结构和良好的可读性使其成为现代网络应用中最常用的数据格式之一。

wendao76的专栏 3990

基于陀螺仪航向反馈的轮式机器人PID直线控制

航向角控制是移动机器人实现稳定直线运动的基础技术,其本质是通过实时感知机体朝向偏差并动态调节驱动输出,以抵消机械不对称、轮径误差等固有扰动。该方法依托陀螺仪测量角速度并积分解算航向角,结合离散化PID算法生成补偿性PWM指令,在嵌入式平台(如STM32)上构建低延迟闭环。相比依赖编码器的速度闭环,它规避了轮径标定与安装偏心等误差源,显著提升低成本平台的工程鲁棒性与部署效率。典型应用场景包括教育机器人直线循迹、AGV基础导航模块开发及IMU-PID融合控制原型验证。

web39explorer的博客 1110

JSON 介绍与数据格式

JSON是一种轻量级的数据交换格式,具有简洁、易读、跨语言的特点。它由对象和数组两种基本结构组成,支持字符串、数字、布尔值、null等6种数据类型。JSON语法严格,键必须用双引号,不支持注释和多余逗号。相比XML,JSON更简洁高效,广泛应用于API交互、配置文件和跨服务通信。几乎所有编程语言都提供JSON解析工具,如JavaScript的JSON.parse()和Python的json模块。JSON已成为互联网数据交换的事实标准。

bkspiderx的博客 1450

Python爬虫实战:手把手教你用Selenium绕过药监局网站的反爬机制(附完整代码)

本文详细介绍了如何使用Selenium绕过药监局网站的反爬机制,提供了一套完整的Python爬虫实战方案。通过浏览器指纹伪装、动态等待策略、会话维持技巧以及分布式采集设计,帮助开发者高效爬取药监局数据,解决政府类网站常见的反爬挑战。

weixin_42620255的博客 737

手把手教你用AirSim生成无人机训练数据集:RGB/深度图/分割图全攻略

本文详细介绍了如何使用AirSim仿真插件在UE4环境中生成无人机训练数据集,涵盖RGB、深度图和分割图等多种模态数据的采集与处理。通过实战指南,读者可以掌握环境配置、多模态数据采集、自动化流程设计及数据后处理等关键技术,为无人机视觉算法开发提供高质量训练数据。

weixin_29008805的博客 449

介绍JSON数据格式

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34217711的博客 166

PCB高速信号换层孔新技术:VECS(Vertical Conductive Structure Technology)解析

摘要:垂直导电结构(VeCS)是一种新型PCB互连技术,由平板信号走线和椭圆形接地层构成半同轴结构,相比传统过孔具有显著优势。通过全波仿真和实测验证,VeCS展现出更好的阻抗连续性、更低的插入损耗和回波损耗,以及优异的串扰抑制能力。其椭圆形接地结构能有效隔离电磁干扰,在相同布线密度下远端串扰比传统过孔降低约50%。VeCS制备工艺与传统PCB工艺兼容,无需新增设备,且能实现更高密度互连。测试结果显示,2.5英寸带状线通道中VeCS结构的信号完整性表现明显优于传统过孔,为高速数字系统提供了更可靠的垂直互连解决

小孟同学的博客 200

19.JSON数据格式讲解以及fastjson介绍

本文主要介绍JSON数据格式和阿里巴巴fastjson工具包

Erik_ly的博客 2193

【教程4>第4章>第12节】通过FPGA实现基于FFT变换的频偏估计和补偿

基于FFT变换的频偏估计和补偿,其基本原理如下:而频偏补偿的目的是将频偏后的信号频谱移回原来的位置。

FPGA/MATLAB学习教程/源码/项目合作开发 882

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

案例介绍|JSON数据格式的转换|pyecharts模块简介

折线图、地图、柱状图数据来源:互联网使用的技术:echarts是个由百度开源的数据可视化。接送是一种轻量级的数据交互格式。可以按照json指定的格式去组织和封装数据json本质上是一个带有特定格式的字符串主要功能:json就是一种在各个编程语言中流通的数据格式,负责不同编程语言中的数据传递和交互。类似于:国际通用语言-英语中国56个民族不同地区的-普通话通过json.dumps(data)方法把python数据转化为了json数据。

threeyuans的博客 1023

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

2024年JSON数据格式详解版介绍

JSON 数据格式(详解版),全面了解 JSON 是什么怎么用

weixin_45017726的博客 296

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

Json数据格式介绍、使用Android自带类库完成Json生成与解析

转载请注明出处:http://blog.youkuaiyun.com/zhaokaiqiang1992     因为在之前的项目中,xml和json数据格式都有使用过,所以对json格式的简单、高效的特点印象深刻。如果使用json语言进行开发,强烈推荐使用json数据格式!     JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。 易于人阅读和编写。同

bruceyang的博客 658
上一篇: struts-config1.1.xml
下一篇: Json 数据格式
lijian820708
博客等级 码龄15年 3粉丝 6原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值