JSON认知

先把权威摆上:JSON ,JSON in JavaScript

JavaScript中的对象使用对象字面量表示法:

var object_literal = {
    Name: "zs",
    Age: 18,
    Married: false
};

JSON字符串:

var json_str = '{"Name": "ls", "Age": 20, "Married": true}';

在JavaScript中,两者之间的转换

//js对象转换为json字符串
var object_to_jsonstr = JSON.stringify(object_literal);
alert(object_to_jsonstr);

//json字符串转换为js对象
var jsonstr_to_object = JSON.parse(json_str);
alert(
    jsonstr_to_object.Name + ',' +
    jsonstr_to_object.Age +  ',' +
    jsonstr_to_object.Married
);

注意地方,JavaScript中的对象字面量中,属性的名字可以加双引号,也可以省略; 而JSON字符串中表示属性名字的部分,必须加双引号,值部分只是string类型需要用双引号,其他数据类型不用。
如下的两个JSON字符串被转换为JavaScript对象后,结果不同:

(function(){
    var str_one = '{"married": false}';
    var str_two = '{"married": "false"}';

    var obj_one = JSON.parse(str_one);
    var obj_two = JSON.parse(str_two);

    alert((obj_one.married === false) + ',' + (obj_two.married === false));

}());

 

posted @ 2013-06-19 17:52  observer & executive  阅读(751)  评论(0编辑  收藏  举报