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;
})
相關文章
相關標籤/搜索