JSON 数据类型
JSON格式支持以下数据类型:
Number:JavaScript中的双精度浮点格式
String:带有反斜杠转义的双引号Unicode
Boolean:true/false
Array:有序的值序列
Value:可以是string, number, true/false, null等
Object:无序键值对集合
Whitespace:可以在任何一对令牌之间使用
null:null值
Number
这是JavaScript中的双精度浮点格式,具体取决于实现。
不使用八进制和十六进制格式。
不使用NaN或Infinity。
下列显示了支持的数字类型
Integer:正负的0到9
Fraction:像.3, .9这样的分数
Exponent:像e, e+, e-, E, E+, E-这样的指数
语法
var json-object-name = { string : number_value, .......}例子
下面是数字数据类型的示例:
var obj = {marks: 97}String
它是一个由零个或多个双引号Unicode字符组成的序列,带有反斜杠转义。
字符是单个字符串,即长度为1的字符串。
语法
var json-object-name = { string : "string value", .......}例子
下面展示了字符串的示例:
var obj = {name: 'Amit'}Boolean
它包括true或false值。
语法
var json-object-name = { string : true/false, .......}例子
var obj = {name: 'Amit', marks: 97, distinction: true}Array
它是值的有序集合。
元素都用方括号括起来,这意味着数组以[开始,以]结束.
值由(逗号)分隔。
数组索引可以从0或1开始。
当键名是顺序整数时,应该使用数组。
语法
[ value, .......]
例子
{
   "books": [
      { "language":"Java" , "edition":"second" },
      { "language":"C++" , "lastName":"fifth" },
      { "language":"C" , "lastName":"third" }
   ]
}Object
这是一组无序的名称/值对。
对象用大括号括起来,也就是说,它以“{”开头,以“}”结尾。
每个名称后面跟着“:”(冒号),键/值对用(逗号)分隔。
这些键必须是字符串,并且应该彼此不同。
当键名是任意字符串时,应该使用对象。
语法
{ string : value, .......}例子
{
   "id": "011A",
   "language": "JAVA",
   "price": 500,
}Whitespace
它可以插入任何一对令牌之间。可以添加它以使代码更可读。示例显示了带有和不带空格的声明
语法
{string:" ",....}例子
var obj1 = {"name": "Sachin Tendulkar"}
var obj2 = {"name": "SauravGanguly"}null
意思是空类型。
语法
null
例子
var i = null;
if(i == 1) {
   document.write("<h1>value is 1</h1>");
} else {
   document.write("<h1>value is null</h1>");
}JSON Value
它包含:
number (integer or floating point)
string
boolean
array
object
null
语法
String | Number | Object | Array | TRUE | FALSE | NULL
例子
var i = 1; var j = "sachin"; var k = null;