1.JSON.stringify()简介:

JSON.stringify()这个函数是用来序列化对象的,即是把对象类型转换成json类型。

它有三个参数,即JSON.stringify(value [, replacer] [, space]):

value是必填,指要转换json类型的对象(类,数组等),

replacer不是必填,用于转换结果的函数或数组,

如果 replacer 为函数,则 JSON.stringify 将调用该函数,并传入每个成员的键和值,使用返回值而不是原始值,如果此函数返回 undefined,则排除成员,根对象的键是一个空字符串:"",

如果 replacer 是一个数组,则仅转换该数组中具有键值的成员。 成员的转换顺序与键在数组中的顺序一样。 当 value 参数也为数组时,将忽略 replacer 数组。

space不是必填,向返回值 JSON 文本添加缩进、空格和换行符以使其更易于读取,

如果省略 space,则将生成返回值文本,而没有任何额外空格,

如果 space 是一个数字,则返回值文本在每个级别缩进指定数目的空格,

如果 space 大于 10,则文本缩进 10 个空格,

如果 space 是一个非空字符串(例如“\t”),则返回值文本在每个级别中缩进字符串中的字符,

如果 space 是长度大于 10 个字符的字符串,则使用前 10 个字符,

上面的文字描述百度上都是,下面用实例来理解JSON.stringify,以及它的三个参数:

2.只有参数value:

<script src="js/jquery-1.8.2.min.js"></script>
<script type="text/javascript">
$(function () {
var user = new Object();
user.name = "一叶秋";
user.address = "中国";
alert(JSON.stringify(user));
});
</script>

结果:

3.参数replacer:

3.1.replacer为数组的时候

$("#btn21").click(function () {
var user = new Object();
user.name = "张三";
user.address = "北京"; var array = new Array();
array[] = "name";
array[] = "address";
array[] = "tel"; alert(JSON.stringify(user, array));
});

如果第二个的value在第一个存在,那么就以第二个的值做key,第一个值为value进行表示,如果第二个的value在第一个不存在,就不显示。结果如下:

3.2.replacer为函数的时候

<script src="js/jquery-1.8.2.min.js"></script>
<script type="text/javascript">
$(function () {//第二个个参数为函数
$("#btn22").click(function () {
var array = new Array();
array[] = "a";
array[] = "b";
array[] = "c";
alert(JSON.stringify(array, upper));
});
});
function upper(key, value) {
return value.toString().toUpperCase();
}</script>

结果如下:

4.参数space

这个参数如果省略的话,那么显示出来的值就第一个例子一样。

不省略的话:

4.1

$("#btn1").click(function(){
var user = new Object();
user.name = "一叶秋";
user.address = "中国";
alert(JSON.stringify(user,null,));
});

结果如下:

4.2

$("#btn3").click(function () {
var user = new Object();
user.name = "一叶秋";
user.address = "中国";
alert(JSON.stringify(user, null, "\t"));
});

结果如下:

JSON.stringify初识的更多相关文章

  1. JSON.parse()和JSON.stringify()

    1.parse 用于从一个字符串中解析出json 对象.例如 var str='{"name":"cpf","age":"23&q ...

  2. JSON.stringify()与JSON.parse()

    JSON.stringify()用于把一个对象解析成字符串,如 var student = { age: 23, name: 'wang' } JSON.stringify(student); 结果: ...

  3. ASP.NET 5 - $.ajax post JSON.stringify(para) is null

    JavaScript 代码: var para = {}; para.id = $("#ad-text-id").val(); para.title = $("#ad-t ...

  4. JSON.stringify()和JSON.parse()

    parse用于从一个字符串中解析出json对象,如 var str = '{"name":"huangxiaojian","age":&qu ...

  5. 解决IE8 内置JSON.stringify,中文变unicode的问题

    转自:http://my.oschina.net/u/919074/blog/191131 项目中出现在IE下出现把json对象转为json串中文变成unicode的问题,最后经过排查,发现是IE8内 ...

  6. JSON.parse()和JSON.stringify()区别

    parse用于从一个字符串中解析出json对象,如: var str = '{"name":"huangxiaojian","age":&q ...

  7. JSON.stringify() / JSON.parse()

    JSON.stringify() 这个方法可以把javascript对象转换成json字符串. JSON.parse() 这个方法可以把 json 字符串转换成 javascript对象. [下面来看 ...

  8. js中解析json对象:JSON.parse()用于从一个字符串中解析出json对象, JSON.stringify()用于从一个对象解析出字符串。

    JSON.parse()用于从一个字符串中解析出json对象. var str = '{"name":"huangxiaojian","age&quo ...

  9. JSON.stringify////////////////////////////////zzzzzzzzzzzzzz

    JSON.stringify 语法实例讲解 可能有些人对系列化这个词过敏,我的理解很简单.就是说把原来是对象的类型转换成字符串类型(或者更确切的说是json类型的).就这么简单.打个比方说,你有一个类 ...

随机推荐

  1. fork和execve

    fork函数在新的子进程中运行相同的程序,新的子进程是父进程的一个复制品. execve函数在当前进程的上下文中加载并运行一个新的程序.它会覆盖当前进程的地址空间,但并没有创建一个新的进程.新的程序仍 ...

  2. NOIP 2002过河卒 Label:dp

    题目描述 如图,A 点有一个过河卒,需要走到目标 B 点.卒行走规则:可以向下.或者向右.同时在棋盘上的任一点有一个对方的马(如上图的C点),该马所在的点和所有跳跃一步可达的点称为对方马的控制点.例如 ...

  3. TYVJ P1026 犁田机器人 Label:水

    背景 USACO OCT 09 2ND 描述 Farmer John為了让自己从无穷无尽的犁田工作中解放出来,於是买了个新机器人帮助他犁田.这个机器人可以完成犁田的任务,可惜有一个小小的缺点:这个犁田 ...

  4. Google Code Jam 2010 Round 1A Problem A. Rotate

    https://code.google.com/codejam/contest/544101/dashboard#s=p0     Problem In the exciting game of Jo ...

  5. 用 Freemarker 生成 word 文档(包含图片)

    1. 用word写一个需要导出的word模板,然后存为xml格式. 2. 将xml中需要动态修改内容的地方,换成freemarker的标识符,例如: <w:p wsp:rsidR="0 ...

  6. 浅谈Java中的Set、List、Map的区别

    http://developer.51cto.com/art/201309/410205_all.htm

  7. FZU 1018 枚举dp

    题意 给出一个数字组成的立方体 在其中选取一个体 使这个体中的数字之和最小 不可以不选 fzu的题目分类动态规划里面不是按难度排得 是按照题号..记得以前做题碰到过算 矩阵里面求子矩阵的最大和的 不会 ...

  8. 《Java核心技术卷二》笔记(一)流与文件

    一.流的概念 在Java中,可以提供字节序列的对象,或者可以接收字节序列的对象,都可以抽象成流.系统中的文件,网络,内存这些设备都可以读入或者写入字节,自然也可以用流的方式来操作.能向程序中提供字节序 ...

  9. MySQL 数据库设计 笔记与总结(3)物理设计

    [物理设计的工作] ① 选择合适的数据库管理系统:Oracle,SQLServe,MySQL,PgSQL ② 定义数据库.表及字段的命名规范 ③ 根据所选的 DBMS 系统选择合适的字段类型 ④ 反范 ...

  10. python 操作excel 使用笔记

    写入excel, 保存的过程中需要注意,保存格式xls后缀,如果用xlsx会报错 def set_style(name,height,bold=False): """&q ...