JSON.stringify(value [replacer] [space])

1. value: 是必须要的字段。就是你输入的对象,比如数组。
最常用的用法

var obj = {name: "Shelock",age: 21
}
var json = JSON.stringify(obj);
console.log(json, typeof json);//{"name":"Shelock","age":21} string
var _obj = JSON.parse(json)
console.log(_obj, typeof _obj);//Object {name: "Shelock", age: 21} "object" 

2. replacer:这个是可选的。它又分为2种方式,一种是方法,第二种是数组。

1)方法:

var a = ['name', 'age'];
var json = JSON.stringify(a,toUpperCase);
function toUpperCase(key, value) { return value.toString().toUpperCase();
}
console.log(json);//"NAME,AGE"

2) 数组:

1。如果value是数组,那么如果replacer再是数组就没有意义了,也就是说只会序列还valuereplacer会被忽略。如:

var a = ['name', 'age'];
var b = ['grade', 'class']
var json = JSON.stringify(a,b);
console.log(json, typeof json);//["name","age"] string

2。如果value是对象,replacer是数组,则是输出replacer中出现过的值的obj的序列化,如下:

var obj = {name: "Shelock",age: 21,class: 1
};
var b = ['name', 'grade', 'class']
var json = JSON.stringify(obj,b);
console.log(json, typeof json);//{"name":"Shelock","class":1} string

3. space:可选,用来做分隔符的。 1).如果省略的话,那么显示出来的值 就没有分隔符。直接输出来,如1中的例子2).如果是一个数字的话,那么它就定义缩进几个字符,最大为10。

var obj = {name: "Shelock",age: 21,class: 1
};
var json = JSON.stringify(obj, null, 2);
console.log(json);//
/*{"name": "Shelock","age": 21,"class": 1
}*/

3).如果是一些转义字符,比如“\n”,表示换行,那么它每行后再加一个换行。

var obj = {name: "Shelock",age: 21,class: 1
};
var json = JSON.stringify(obj, null, '\n');
console.log(json);//
/*
{"name": "Shelock","age": 21,"class": 1
}
*/

4).如果仅仅是字符串,OK,就在每行输出值的时候把这些字符串附加上去就OK。当然,最大长度也是10个字符。

var obj = {name: "Shelock",age: 21,class: 1
};
var json = JSON.stringify(obj, null, 'omg');
console.log(json);//
/*
{
omg"name": "Shelock",
omg"age": 21,
omg"class": 1
}
*/

JSON.stringify详解相关推荐

  1. json.stringify()详解

    JSON.stringify() 方法将一个 JavaScript 对象或值转换为 JSON 字符串,如果指定了一个 replacer 函数,则可以选择性地替换值,或者指定的 replacer 是数组 ...

  2. JSON.stringify() 详解

    该函数的作用是:系列化对象  系列化对象说白了就是把对象的类型转换为字符串类型 语法 JSON.stringify(value[, replacer [, space]]) value  将要序列化成 ...

  3. SpringMVC接受JSON参数详解及常见错误总结我改

    SpringMVC接受JSON参数详解及常见错误总结 最近一段时间不想使用Session了,想感受一下Token这样比较安全,稳健的方式,顺便写一个统一的接口给浏览器还有APP.所以把一个练手项目的前 ...

  4. 【JSON】JSON入门详解(二)

    文章目录 JSON基础文章荐读 JavaScript创建JSON对象 JSON与XML的那些事 JSON与XML的相同之处 JSON与XML的不同之处 AJAX相关JSON与XML JSON与XML的 ...

  5. python中json模块博客园_Python中的Json模块详解

    Python中的Json模块详解 Json(JavaScript Object Notation)它是一种轻量级的数据交换格式,具有数据格式简单,读写方便易懂等很多优点.许多主流的编程语言都在用它来进 ...

  6. JSON开发详解-张晨光-专题视频课程

    JSON开发详解-25人已学习 课程介绍         JSON 是轻量级的文本数据交换格式,JSON 文本格式在语法上与创建 JavaScript 对象的代码相同,JSON 比 XML 更小.更快 ...

  7. php组装json数据包,php封装json通信接口详解及实例

    php创建JSON数据详解: //创建一个字符数组 $arr=array( 'id'=>1, 'name'=>'david' ); echo json_encode($arr);//这个是 ...

  8. python中的json函数_python中装饰器、内置函数、json的详解

    装饰器 装饰器本质上是一个Python函数,它可以让其他函数在不需要做任何代码变动的前提下增加额外功能,装饰器的返回值也是一个函数对象. 先看简单例子: def run(): time.sleep(1 ...

  9. android Json解析详解(详细代码)

    android Json解析详解(详细代码)   JSON的定义: 一种轻量级的数据交换格式,具有良好的可读和便于快速编写的特性.业内主流技术为其提供了完整的解决方案(有点类似于正则表达式 ,获得了当 ...

最新文章

  1. 3D目标检测论文阅读摘要
  2. 在Ubuntu 16.04.5 LTS上安装pygame模块
  3. 课程 | 中科院教授带你快速入门机器学习
  4. Javascript+xmlhttp调用Webservice
  5. java+自定义异常类+输入若干成绩 为负数时输出抛出异常_java+自定义异常类+输入若干成绩 为...
  6. python三十一:random模块
  7. 【Python基础】解决matplotlib文字标签遮挡问题
  8. GCD与LCM【数论】
  9. [有限元] Ansys Workbench 实现 Edge 的分段 Pressure 的方法:SpaceClaim 中使用分割面
  10. 互联网公司面试必备综合篇
  11. 最近要使用User Interface Process Application Block for .NET(微软net开发架构)
  12. DPDK框架原理简介(0003转)
  13. win10计算机本地组策略编辑器,如何打开Win10本地组策略编辑器?
  14. python-opencv最大内切圆查找
  15. 真无线蓝牙耳机哪个音质最好?2020高性价真无线蓝牙耳机音质排行榜!
  16. 在unity中,模型自动旋转
  17. 如何用PS去掉照片中的路人
  18. Windows Server 2019的安装模式
  19. 新页微NY7503S无线充芯片10w
  20. 目前主流的app开发方式

热门文章

  1. 京东网页版静态页面的几个问题
  2. 04,Android 单位mdpi、hdpi、xhdpi、xxhdpi、xxxhdpi
  3. centos6.6 cobber 安装
  4. 说明使用tc编程的一般步骤 c语言,TC语言程序设计.ppt
  5. \(^_^)/ Effective java
  6. ubuntu20下Cuckoo SandBox安装教程--大踩坑版(一)
  7. 一张图带你看懂UML类图
  8. 天河1号计算机配置,“天河一号”超级计算机配置抢先披露
  9. 盘点几种主流LED驱动方式及驱动电源
  10. 为什么要写博客?写博客有哪些好处?