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 ...
随机推荐
- 2020.08.23 瞎扯周记之论短暂假期(QAQ)内要不要睡午觉
蒟蒻的假期都是很短暂的嘛 作为一只合格的蒟蒻 假期自然是很短暂的QAQ 只有短短的26h93360s(手动微笑) 总体来讲 假期只有两件事要干: 1.满足人体自身需求 2.满足作业需求 2.5.摸鱼 ...
- Labview学习之路(三)前面板数值控件
首先看一下前面板都有什么数值控件(我用的labview是17年的,其他版本可能会有不同) 我个人将他们分成了六个部分 第一部分 这个部分大家很好理解,数值输入数值输出,时间输入和时间输出,这里我们讲一 ...
- Android开发之使一打开activity等界面Edittext获取焦点,弹出软键盘java代码实现
// 获取编辑框焦点 editText.setFocusable(true); //打开软键盘 IInputMethodManager imm = (InputMethodManager)getSys ...
- 【python开发】迈出第一步,这可能是我唯一一次的Python开发了
好久没写博了,今天就瞎唠唠吧 背景: 组内有个测试平台,是基于Python2+tornado 框架写的,之前自己维护了一套系统的UIweb自动化代码,现在需要集成进去.这很可能是自己唯一一次基于pyt ...
- 软件架构与设计 百度网盘的pdf电子书籍
如有版权问题请及时联系小编 软件架构与设计 百度网盘的pdf电子书籍 1:<软件体系结构(PDF)>https://pan.baidu.com/s/1lChfIJt5lc63KO09n5L ...
- Broker的主从架构是怎么实现的?
前言 上一篇文章我们一起聊了聊RocketMQ的NameServer的一些内部工作流程,了解了NameServer的部署和与Broker之间的联系,那么今天我们就来一起聊聊Broker的一些内部原理. ...
- php cookie及session
1.会话控制概括 1)http协议的缺陷 无状态,就是无记忆,不能让同一浏览器和服务器进行多次数据交换时,产生业务的连续性, 2)什么是会话控制 会话控制就是解决http无记忆缺陷的,能够==将数据持 ...
- Oracle中真正稳妥的求三甲的方法
坐地铁回家路上忽然想起,三甲排名可能为多个,只取三名岂不荒谬.不信请看下面数据: create table tb_score( id number(4,0) primary key, name nva ...
- Vue和d3.js(v4)力导向图force结合使用,v3版本升级v4【一】
前段时间因为参与项目涉密,所以一直没有更新博客,有些博友给我私信或者留言要部分博文的源码,因为我的电脑更换,demo的源码没有备份 所以无法提供.大家可针对具体问题问我,有空我定会回复的.另外转发文章 ...
- NGINX 负载均衡的理解
前言 NGINX是轻量级,也是当前比较流行的web服务器软件.体积小但是功能强大. 这里我按照自己的理解,记录下对NGINX负载均衡的认识.(加权均衡,最小连接) 这里参考了 [https://blo ...