JSON.stringify 的使用
一、作用:这个函数的作用主要是为了序列化对象。就是把原来是对象的类型转换成字符串类型(json格式的String类型)。
二、语法:JSON.stringify(value[, replacer][, space])
value:必须要的字段。传入的对象,如数组,类等。
replacer:可选字段。两种方式,一是方法,二是数组。
情况一,传入的是数组。以第二个数组的值为key,第一个数组为value进行序列化,如果不存在就忽略。
情况二,传入的是方法。把序列化后的每一个对象传进方法里面进行处理。
space:分隔符。
1、如果省略,那显示出来的值就没有分隔符,直接输出。
2、如果是一个数字,那它就定义缩进几个字符,如果大于10,则最大值为10。
3、如果是一些转义字符,比如“\t”,表示回车,那它每行一个回车。
4、如果是字符串,那每行输出组把该字符串附加上去,最大长度也是10个字符。
三、实例:
1、只有一个参数,即只传入参数value
|
var text = {}; text.id = 1; text.name = "fang"; var json = JSON.stringify(text); alert(text + " | " + json); |
结果:

2、第二个参数存在,传入的值是function时
|
function upperCase(key, value) { return value.toString().toUpperCase(); } var text = new Array(); text[0] = "abc"; text[1] = "defg"; var json = JSON.stringify(text, upperCase); alert(text + " | " + json); |
结果:

3、第二个参数存在,并且为数组
3.1、进行序列化的对象是数组,那忽略第二个参数,直接进行序列化
|
var text = new Array(); text[0] = "abc"; text[1] = "defg"; var text2 = new Array(); text2[0] = "1"; text2[1] = "2"; var json = JSON.stringify(text, text2); alert(text + " | " + json); |
结果:

3.2、第一个参数不是数组对象,第二个是数组,如果第二个数组的value在第一个存在,那就以第二个的值为key,第一个值为value进行表示
|
var text = new Object(); text.id = 1; text.name = "fxr"; text.sex = "male"; var array = new Array(); array[0] = "id"; array[1] = "name"; array[2] = "age"; // 第一个对象中不存在该属性 var json = JSON.stringify(text, array); alert(text + " | " + json); |
结果:array[2] = “age” 这个在第一个中找不到,就不显示。

4、第三个参数存在
4.1、参数为数字:定义缩进几个字符,最大值为10
|
var text = new Object(); text.id = 1; text.name = "fxr"; text.sex = "male"; var array = new Array(); array[0] = "id"; array[1] = "name"; array[2] = "age"; // 第一个对象中不存在该属性 // 缩进20个字符,但是最大值为10,缩进10个字符 var json = JSON.stringify(text, array, 20); alert(text + " | " + json); |
结果:

4.2、参数为转义字符:比如“\t”,表示回车,那每一行一个回车
|
var text = new Object(); text.id = 1; text.name = "fxr"; text.sex = "male"; var array = new Array(); array[0] = "id"; array[1] = "name"; array[2] = "age"; // 第一个对象中不存在该属性 // 换行 var json = JSON.stringify(text, array, "\t"); alert(text + " | " + json); |
结果:

4.3、参数为字符串,则附加上去,最大长度为10个字符
|
var text = new Object(); text.id = 1; text.name = "fxr"; text.sex = "male"; var array = new Array(); array[0] = "id"; array[1] = "name"; array[2] = "age"; // 第一个对象中不存在该属性 // 字符串 var json = JSON.stringify(text, array, "添加"); alert(text + " | " + json); |
结果:

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类型的).就这么简单.打个比方说,你有一个类 ...
- 浅谈JSON.stringify 函数与toJosn函数和Json.parse函数
JSON.stringify 函数 (JavaScript) 语法:JSON.stringify(value [, replacer] [, space]) 将 JavaScript 值转换为 Jav ...
随机推荐
- 记一些Python(Pymysql)建表、增删改查等基础操作(小白适用)
1.读取sql文件创建数据表 有一个形如下图的sql文件,使用python读取文件并在数据库中创建所有的表. 很多人学习python,不知道从何学起.很多人学习python,掌握了基本语法过后,不知道 ...
- 为什么golang中不存在三元运算符
三元运算符广泛存在于其他语言中,比如: python: val = trueValue if expr else falseValue javascript: const val = expr ? t ...
- 使用Unity的50个建议
关于这些建议 这些建议并不适用于所有的项目 这些建议是基于我与3-20人的小团队项目经验总结出来的 结构.可重复使用性.明晰度都是有价的——团队规模和项目规模决定了是否值得付这个价. 一些建议也许公然 ...
- Unity坑之 加了Rigidbody后主角反而朝天上飞?
今儿在做项目的时候,给主角加上一个Rigidbody组件,设置如下图: 然后问题来了,我本来是想让主角通过重力控制,掉到地上,但是加上之后,主角反而朝着天上飞! 这TM什么鬼? 经过多番探查,发现是A ...
- 【web系统UI自动化】关于UI自动化的总结
实施过了web系统的UI自动化,回顾梳理下,想到什么写什么,随时补充. 首先,自动化测试不是手动测试的替代品,是比较好的补充,而且不是占大比重的补充. 70%的测试工作集中在底层接口测试和单元测试,2 ...
- java初探(1)之静态页面化——客户端缓存
利用服务端缓存技术,将页面和对象缓存在redis中,可以减少时间浪费,内存开销.但在每次请求的过程中,仍然会有大量静态资源的请求和返回. 使用静态页面技术,页面不必要使用页面交互技术,比如thymel ...
- Activiti7 网关(排他网关)
什么是排他网关? 排他网关(也叫异或(XOR)网关,或叫基于数据的排他网关),用于在流程中实现决策,当流程执行到这个网关,所有分支都会判断条件是否为true,如果为true则执行该分支 注意:排他网关 ...
- Thymeleaf中model设一个值 页面显示此值 JS取此值
model设值: m.addAttribute("pageNo", pageNo); 页面显示值: 当前为第:<span th:text="${pageNo}&qu ...
- Java 序列化界新贵 kryo 和熟悉的“老大哥”,就是 PowerJob 的序列化方案
本文适合有 Java 基础知识的人群 作者:HelloGitHub-Salieri HelloGitHub 推出的<讲解开源项目>系列. 项目地址: https://github.com/ ...
- 案例:ADG环境遇到redo日志member路径有误以及RMAN-6571错误
最近先后帮客户做了两套从虚拟化环境到物理机的数据库迁移,都是Linux系统,Oracle 11.2.0.4的RAC,最终选定ADG方案实现迁移,简单高效. 在之前的文章Oracle 11g ADG 部 ...