JSON详细总结

/**
 * Created by fa on 2016/3/15.
 */
var data = {
    name:"hello",
    children:[{
        name:"child",
        height:50
    }]
}
console.log(JSON.stringify(data));
//第二个参数是数组就表示只获取指定的属性
console.log(JSON.stringify(data,["children"]));
//第二个参数是function,如果返回值是undefined表示忽略,其它就使用返回值
console.log(JSON.stringify(data,function(key,value){
    switch (key){
        case "name":{
            return undefined;
        }
        case "height":
            return {value:"very height"};
        default :
            return value;
    }
}));
//第三个参数可以把换行符换成自己想要的符号
console.log(JSON.stringify(data,null,"-- -"));
//有toJSON函数就使用toJSON函数的返回值
data = {
    toJSON:function(){
        return {name:"toJSON"}
    }
}
console.log(JSON.stringify(data));

function Persion(){

}
data = {
    name:"Persion",
    msg:"hello"
}
//parse的第二个参数可以设定转换规则
var obj = JSON.parse(JSON.stringify(data),function(key,value){
    if(key === "name"){
        return new Persion();
    }
    return value;
})

 

posted @ 2016-03-16 21:45  给力叔  阅读(288)  评论(0编辑  收藏  举报