json-stringify()

[b]JSON.stringify() [/b]
将value(Object,Array,String,Number...)序列化为JSON字符串
语法:JSON.stringify(value,filter,indent);
返回值:JSON字符串
value --传入的类型{type:String|Object|String|Number|Boolean|null}
filter --过滤器可以是个数组,也可以是个函数{type : []|{}}
indent --如果是数字则代表空白符的个数,最多10个;也可以直接传入缩进的符号{type : Number | 特殊符号}

var gather = {
id : 1314,
name : 'wjy',
infor : {
age : 20,
sex : 'woman',
marry : false,
identity : 622421,
habit : ['电影','乒乓球','游戏',true]
},
family : ['妈妈','爸爸'],
likeGames : ['PCgame','Netgame']
};
var jsonText = JSON.stringify(gather,null,4);
//第二个参数是数组,只会序列化返回数组里列出的名称
var jsonText1 = JSON.stringify(gather,['id','family'],'=');
var jsonText2 = JSON.stringify(gather,function(key,val){
switch(key){
case 'id' :
return 'id is ' + val;
case 'family' :
return val.join('@');
case 'infor' :
//infor的val 还可以使用JSON.stringify()
//return JSON.stringify(val,["age","sex"]);
return Object.prototype.toString.call(val).slice(8, -1);
case 'likeGames' :
//通过返回undefined删除该属性
return undefined;
//一定要default,以便传入的其他值能正常的返回到序列化结果中。
default :
return val;
}
},10);

alert(jsonText);结果:
[img]http://dl2.iteye.com/upload/attachment/0105/9862/ed142e95-e87f-3401-b792-62e9d77d88ab.png[/img]

alert(jsonText1);结果:
[img]http://dl2.iteye.com/upload/attachment/0105/9864/10ae4c7c-1ea8-399d-8538-78189a53837e.png[/img]

alert(jsonText2);结果:
[img]http://dl2.iteye.com/upload/attachment/0105/9866/19ae4a0e-3f53-3dc5-85ef-b08e55bdc033.png[/img]


JSON.stringify("abc"); // '"abc"'
JSON.stringify(1); // "1"
JSON.stringify(false); // "false"
JSON.stringify([]); // "[]"
JSON.stringify({}); // "{}"
JSON.stringify([1, "false", false]);// '[1,"false",false]'
JSON.stringify({ name: "张三" });// '{"name":"张三"}'

[url]http://handyxuefeng.blog.163.com/blog/static/4545217220123510051162/[/url]
[url]http://javascript.ruanyifeng.com/stdlib/json.html?[/url]
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值