JSON数据的重要性

2021-06-25 22:18王德贵
电脑报 2021年1期
关键词:字符串数组数据结构

王德贵

在学习编程或是在程序开发过程中,不论使用什么样的语言或工具比如Java、Python、C/C++、APPInventor以及树莓派等,都可以直接或通过调用API接口用到JSON数据。我通过对JSON数据的实际应用,认为JSON这种数据格式越来越重要,也是以后数据处理的发展趋势。

现在大量的API数据均为JSON格式,這给普通开发者带来了福音,对于刚刚接触一些数据的初期开发者来说,相对于XML还是JSON格式更容易理解一些。

一、JSON简介

1.JSON及特点

JSON全称JavaScript Object Notation,JavaScript对象表示法。类似于XML但JSON 比XML更小、更快、更易解析。JSON是一种与开发语言无关的、轻量级的数据格式。采用完全独立于语言的文本格式,是一种理想的数据交换格式。同时,JSON是 JavaScript 原生格式,这意味着在 JavaScript 中处理 JSON数据不需要任何特殊的 API 或工具包。优点是易于人阅读和编写,同时也易于解析和生成。它是基于JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 1999的一个子集。

2.重要性

JSON是Douglas Crockford在2001年开始推广使用的数据格式,在2005年-2006年正式成为主流的数据格式,雅虎和谷歌就在那时候开始广泛地使用JSON格式。

当你在学习APPInventor过程中就会涉及到调用API(应用程序接口)的JSON数据。通过对JSON数据的学习运用,你会发觉JSON数据格式越来越重要,这也是以后数据处理的发展趋势,在相应的领域也会得到广泛应用。

二、JSON数据结构

1.对象

在JavaScript中是使用花括号{}包裹起来的内容,数据结构为 {key1:value1, key2:value2, ...} 的键值对结构。在面向对象的语言中,key 为对象的属性,value 为对应的值。键名可以使用整数和字符串来表示。值的类型可以是任意类型。名称用引号括起来;值如果是字符串则必须用括号,数值型则不须要。

例如:var o={"姓名":"wdg","学生":Ture,"密码":123456,"爱好":["篮球","唱歌"],"生日":"2010-08-20"}

换成下列格式更清晰明了,更容易理解(图1):

2.数组

数组在JavaScript中是方括号[]包裹起来的内容,数据结构为["Python", "C++", "APPInventor", ...] 的索引结构。在 JS 中,数组是一种比较特殊的数据类型,它也可以像对象那样使用键值对,但还是索引使用得多。同样,值的类型可以是任意类型。

例如:var jsonlist=[{"姓名":"wdg","学生":Ture,"密码":123456,"爱好":["篮球","唱歌"],"生日":"2010-08-20"},{"姓名":"wzy","学生":Flase,"密码":123456,"爱好":["舞蹈","画画"],"生日":"1988-01-24"}]

同样换成下列格式更清晰明了,更容易理解(图2):

这个列表,有2项格式相同的数据,每项数据有5个键值对。

三、JSON 与 JS 对象的关系

JSON 是 JS 对象的字符串表示法,它使用文本表示一个 JS 对象的信息,本质是一个字符串。

var obj={"a": "Hello", "b":"World"};//这是一个对象,注意键名也是可以不使用引号的。

var json='{"a":"Hello","b":"World"}';//这是一个JSON字符串,本质是一个字符串。

下期我们将通过JSON与APPinventor的应用案例进一步理解JSON的重要性。

猜你喜欢
字符串数组数据结构
JAVA稀疏矩阵算法
数据结构线上线下混合教学模式探讨
重典型应用,明结构关系
JAVA玩转数学之二维数组排序
更高效用好 Excel的数组公式
一种基于PowerBuilder环境字符串相似度算法
SQL server 2008中的常见的字符串处理函数
倍增法之后缀数组解决重复子串的问题
最简单的排序算法(续)
寻找勾股数组的历程