您的位置:首页 > Web前端 > JavaScript

JSON

2015-07-20 15:57 701 查看
1.什么是JSON

JSON( javascript Object Notation )是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。

JSON采用key/value的形式来表示数据,其中使用“{}”表示对象,而“[]”则表示数组,详细的语法可以参考json.org

JSON对象:{"name":"LiLei","age":19,"sex":"male"}
JSON数组:[
{"name":"LiLei","age":19,"sex":"male"},
{"name":"HanMei","age":18,"sex":"famale"}
]


2、原生JSON对象

目前支持原生JSON对象的浏览器包括:IE8、Firefox3.5以及Chrome3.0/4.0。原生的JSON对象是一个只包括parse方法与stringify方法的纯粹的对象,用于解析和构建JSON文本。

2.1、 JSON.parse()

parse() 方法是将一个符合JSON语法的字符串解析成一个JavaScript对象

// 简单JSON 对象
var str = '{"name":"LiLei","age":19,"sex":"male"}';
var obj = JSON.parse(str);
console.log(obj);
// Object {name: "LiLei", age: 19, sex: "male"}

// JSON 数组
var str = '[{"name":"LiLei","age":19,"sex":"male"},{"name":"Lucy","age":17,"sex":"female"}]';
var obj = JSON.parse(str);
alert(obj[0]);//Object {name: "LiLei", age: 19, sex: "male"}
alert(obj[1]);//Object {name: "Lucy", age: 17, sex: "female"}

  

  

注意:使用JSON.parse的时候,对象的每个属性都必须用双引号括起来,否则会抛出异常;

var str = '{company:"kedacom"}';
var json = JSON.parse(str);  //解析出现异常
var str2 = "{'company':'kedacom'}";
var json2 = JSON.parse(str2);  //解析出现异常


  2.2、JSON.stringify  将一个JavaScript对象序列化成JSON结构的字符串

var str = {name: "Lucy", age: 17, sex: "female"}
objstr = JSON.stringify(str);
console.log(objstr)
// {"name":"Lucy","age":17,"sex":"female"}


3、原生JSON的的浏览器兼容

目前支持原生JSON对象的浏览器包括:IE8(S)、Firefox3.5以及Chrome3.0/4.0,对于更低版本的浏览器支持在网络上又很多的解决方案,目前使用最为广泛和成熟的解决方案是在项目中引入json.js库,该扩展库是由大师Douglas Crockford扩展实现(有兴趣的童靴可以读下源码),在最近的一次更新中可以看到如下建议,json.js文件应该使用被最新的json2.js替换。

https://github.com/douglascrockford/JSON-js可以下载到json.js和json2.js两个文件。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: