JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。它基于JavaScript的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等)。这些特性使JSON成为理想的数据交换语言。易于人阅读和编写,同时也易于机器解析和生成。
JSON语法是JavaScript对象表示语法的子集,
{
"scores":[
{"Chinese":"A","English":"B"},
{"Chinese":"A","English":"B"},
{"Chinese":"A","English":"B"}
]
}
1、对象:“{}”,数据结构为{key:value,key:value,...}
取值方法:对象.key=?
2、数组“[]”,数据结构为["chinese","english","math",...]
取之方法:使用索引获取
{"chinese":"A"}
{
"scores":[
{"chinese":"A","english":"B"},
{"chinese":"A","english":"B"},
{"chinese":"A","english":"B"}
]
}
{
"scores1":[
{"chinese":"A","english":"B"},
{"chinese":"A","english":"B"},
{"chinese":"A","english":"B"}
],
"scores2":[
{"chinese":"A","english":"B"},
{"chinese":"A","english":"B"},
{"chinese":"A","english":"B"}
],
"scores3":[
{"chinese":"A","english":"B"},
{"chinese":"A","english":"B"},
{"chinese":"A","english":"B"}
]
}
JSON是JavaScript原生格式,所以在JavaScript中处理JSON数据不需要任何特殊的API或工具包。
var scores={
"scores":[
{"chinese":"A","english":"B"},
{"chinese":"A","english":"B"},
{"chinese":"A","english":"B"}
]
}
{
"scores1":[
{"chinese":"A","english":"B"},
{"chinese":"A","english":"B"},
{"chinese":"A","english":"B"}
],
"scores2":[
{"chinese":"A","english":"B"},
{"chinese":"A","english":"B"},
{"chinese":"A","english":"B"}
],
"scores3":[
{"chinese":"A","english":"B"},
{"chinese":"A","english":"B"},
{"chinese":"A","english":"B"}
]
}
var var1=scores.scores1[0].chinese
scores.scores1[0].chinese="A"
修改数据时需要把数据转换到文本格式
var newJSONtext=scores.toJSONString();
该文本字符串可以在任何地方使用,如Ajax中的请求字符串,可以将JavaScript对象转换为JSON文本,方式相同。
使用JSON只需调用一个简单的函数就可以获得经过格式化的数据,可以直接使用了。
JSON和XML不相上下,简易语法和规范的标签形式。
都具有良好的可扩展性,但是在Javascript中JSON还是比较占优势,因为它可以存储Javascript符合对象。
xml比较容易读懂
json读起来费解但是适合机器阅读。
xml会好写一些,但是标记繁琐。
json写出来内容比xml简单。