JSON.stringify初识
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初识的更多相关文章
- JSON.parse()和JSON.stringify()
1.parse 用于从一个字符串中解析出json 对象.例如 var str='{"name":"cpf","age":"23&q ...
- JSON.stringify()与JSON.parse()
JSON.stringify()用于把一个对象解析成字符串,如 var student = { age: 23, name: 'wang' } JSON.stringify(student); 结果: ...
- ASP.NET 5 - $.ajax post JSON.stringify(para) is null
JavaScript 代码: var para = {}; para.id = $("#ad-text-id").val(); para.title = $("#ad-t ...
- JSON.stringify()和JSON.parse()
parse用于从一个字符串中解析出json对象,如 var str = '{"name":"huangxiaojian","age":&qu ...
- 解决IE8 内置JSON.stringify,中文变unicode的问题
转自:http://my.oschina.net/u/919074/blog/191131 项目中出现在IE下出现把json对象转为json串中文变成unicode的问题,最后经过排查,发现是IE8内 ...
- JSON.parse()和JSON.stringify()区别
parse用于从一个字符串中解析出json对象,如: var str = '{"name":"huangxiaojian","age":&q ...
- JSON.stringify() / JSON.parse()
JSON.stringify() 这个方法可以把javascript对象转换成json字符串. JSON.parse() 这个方法可以把 json 字符串转换成 javascript对象. [下面来看 ...
- js中解析json对象:JSON.parse()用于从一个字符串中解析出json对象, JSON.stringify()用于从一个对象解析出字符串。
JSON.parse()用于从一个字符串中解析出json对象. var str = '{"name":"huangxiaojian","age&quo ...
- JSON.stringify////////////////////////////////zzzzzzzzzzzzzz
JSON.stringify 语法实例讲解 可能有些人对系列化这个词过敏,我的理解很简单.就是说把原来是对象的类型转换成字符串类型(或者更确切的说是json类型的).就这么简单.打个比方说,你有一个类 ...
随机推荐
- BZOJ3444: 最后的晚餐
Description [问题背景] 高三的学长们就要离开学校,各奔东西了.某班n人在举行最后的离别晚餐时,饭店老板觉得十分纠结.因为有m名学生偷偷找他,要求和自己暗恋的同学坐在一起. [问题描述] ...
- Java Web网站应用中的单点登录
采用SSH架构加以说明:1. 建立一个登录管理类LoginManager2. 在LoginManager中定义一个集合,管理登录的用户.3. 在Spring中将LoginManager配置成单例 ...
- spring boot结合thymeleaf
1.在pom文件中加入thymeleaf相关的依赖 spring-boot-starter-thymeleaf 2.在resource文件夹下创建 template文件夹,在template文件夹中创 ...
- SSH+Oracle10G抛Disabling contextual LOB creation as createClob() m
在使用Oracle10G时候,实体类使用了CLOB字段,结果抛了Disabling contextual LOB creation as createClob() method threw error ...
- PDO 学习与使用 ( 二 ) PDO 数据提取 和 预处理语句
以数据库 msg 为例,说明 PDO 的数据提取.预处理语句: mysql> show tables;+---------------+| Tables_in_msg |+----------- ...
- C语言 可变参数
一.基础部分 1.1 什么是可变长参数 可变长参数:顾名思义,就是函数的参数长度(数量)是可变的.比如 C 语言的 printf 系列的(格式化输入输出等)函数,都是参数可变的.下面是 printf ...
- notepad++ gvim editplus 三款选择试用
notepad++开源 试用还不错 但默认不会识别语法高亮 要自己设置 比较烦 gvim 在XP下竟然无法返回命令行 百般折腾无奈放弃 editplus 自带资源栏 选择器 文件查找功能 ...
- NEC学习 ---- 布局 -两列, 左侧定宽,右侧自适应
CSS代码:以下两处代码是NEC中CSS初始化样式和功能性样式.今后的NEC研究中,默认这两处是引用的. /* 这是CSS reset 代码 --- 初始化样式 */ /* reset */ html ...
- 5 个 Composer 小技巧
Composer是新一代的PHP依赖管理工具.其介绍和基本用法可以看这篇<Composer PHP依赖管理的新时代>.本文介绍使用Composer的五个小技巧,希望能给你的PHP开发带来方 ...
- laravel elixir
npm install npm install jquery --save //bootsrap3.36 与 jquery3不兼容,下载jquery时可能需要确定版本号 npm install jqu ...