JSON(JavaScript Object Notation)指的是 JavaScript 对象表示法,是一种轻量级的数据交换格式。它的优点是易于人的阅读和编写,同时也易于及其解析和生成。它是JavaScript语法的一个子集。JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等)。 这些特性使JSON成为理想的数据交换语言。
{ "phone" : "123-456" }以上便是一个最简单的JSON的实例。
JSON的语法规范如下: - 数据在名称/值对中 - 数据由逗号分隔 - 大括号保存对象 - 中括号保存数组 可能概念看起来不太直观,我们通过几个例子来说明一下。
JSON 数据的书写格式是:名称/值对。 名称/值对包括字段名称(在双引号中),后面写一个冒号,然后是值,我们还是以上面的例子作分析:
{ "phone" : "123-456" }这等价于这条 JavaScript 语句:
phone = "123-456"例子中包含了一个JSON对象,以大括号作为边界。其中包含了数据的名称"phone",和数据的值"123-456"。 这两个元素构成了JSON中常见的数据格式——名称 / 值对。
JSON 值可以是: - 数字(整数或浮点数) - 字符串(在双引号中) - 逻辑值( true 或 false ) - 数组(在中括号中) - 对象(在大括号中) - null JSON 数字可以是整型或者浮点型:
{ "age" : 20 }JSON 布尔值可以是 true 或者 false :
{ "handsome" : true }JSON 可以设置 null 值:
{ "name" : null }JSON 对象在大括号({})中书写: 对象可以包含多个名称/值对,对象之间用逗号隔开:
{ "name" : "hjs" , "age" : 20 }这句等价于
name = "hjs"; age = 20;JSON 数组在中括号中书写: 数组可包含多个对象:
{ "name" : "hjs" "phone" : [ {"cellphone1" : "123-456"} {"cellphone2" : "789-000"} ] }例子中有两个名称/值对,第一个对象name的值是 hjs ,第二个对象 phone 的值是一个包含两个对象的数组。每个对象都代表一个电话( cellphone )。
JSON 文件的文件类型是 “.json” JSON 文本的 MIME 类型是 “application/json”