这几天理解的 json
之前一直有听说 JSON (javascript object notation),但是一直没有去看明白是什么一回事。
知道这几天才对这个当下很流行的用于数据交换的格式进行了解。
格式:
先说一下这个JSON的格式(其实看名字就知道这个跟javascript的对象类型有什么不可告人的关系):
{
"id":1,
"name":"peter"
}
好吧,这个是最简单的一个JSON对象。
其实一开始我是以为 JSON 就是 js 的对象,但是这个只是用了 js 对象的格式,而且写法也有写规则:
键一定要用 “ ” 这个双引号括住,而且如果值是字符串的话也要用 “” 这个括起来,不然会报错的。
与字符串的相互转换:
作为数据交换的对象,最主要目的是和后台进行数据交换,不然要他来干嘛。
先说一下把 JSON 对象转换成字符串,毕竟传到后台的是一段 JSON 格式的字符串。
var jsonDemo = {
"id":1,
"name":"peter"
}
function jsonToStr(json) { return JSON.stringify(json); }
var result = jsonToStr(jsonDemo);
好了,现在就可以把 JSON 格式的字符串输出了。
然后再有把 JSON 格式的字符串转换成JSON
var jsonDemo2 = '{\ "id":1,\ "name":"peter"\ }'
function strToJSON(str) { return JSON.parse(str); }
var result = strToJSON(jsonDemo2);
还有一个更简单的方法
新版本的 JSON 修改了 API,将 JSON.stringify() 和 JSON.parse() 两个方法都注入到了 Javascript 的内建对象里面,前者变成了 Object.toJSONString(),而后者变成了 String.parseJSON()。如果提示找不到toJSONString()和parseJSON()方法,则说明 json 包版本太低。
来自 $雨$