JS 将 json 对象转成字符串并保留格式 - JSON.stringify()

简介: JS 将 json 对象转成字符串并保留格式 - JSON.stringify()
  • JSON.stringify(value, replacer, space)
  • value:将要序列化成一个 JSON 字符串的值。
  • replacer(可选):如果该参数是一个函数,则在序列化过程中,被序列化的值的每个属性都会经过该函数的转换和处理;如果该参数是一个数组,则只有包含在这个数组中的属性名才会被序列化到最终的 JSON 字符串中;如果该参数为 null 或者未提供,则对象所有的属性都会被序列化。
  • space(可选):指定缩进用的空白字符串,用于美化输出(pretty-print);如果参数是个数字,它代表有多少的空格;上限为 10。该值若小于 1,则意味着没有空格;如果该参数为字符串(字符串的前十个字母),该字符串将被作为空格;如果该参数没有提供(或为 null)将没有空格。
  • 细节注意:如果使用数字之类的无效,可以尝试字符串。例如 全角空格,在有些小程序或者特殊项目中可以通过这个进行解决。
  • 案例效果
<script>
  const json = {
    "key1": 123,
    key2: "测试",
    key3: 'asldjlaskjd',
    key4: 'https://www.baidu.com/'
  }
  // 普通转换
  console.log(JSON.stringify(json), '=======>1')
  // 缩进 2 个
  console.log(JSON.stringify(json, null, 2), '=======>2')
  // 缩进 4 个
  console.log(JSON.stringify(json, null, 4), '=======>3')
  // 好像是缩进了 4 个
  console.log(JSON.stringify(json, null, '\t'), '=======>4')
  // 前面以 test 字符串为缩进
  console.log(JSON.stringify(json, null, 'test'), '=======>5')
  // 前面以 2个普通空格 字符串为缩进
  console.log(JSON.stringify(json, null, '  '), '=======>6')
  // 前面以 2个全角空格 字符串为缩进
  console.log(JSON.stringify(json, null, '  '), '=======>7')
  // 前面缩进换成换行符
  console.log(JSON.stringify(json, null, '\n'), '=======>8')
</script>
相关文章
|
5天前
|
JavaScript 前端开发 CDN
前端 JS 经典:package.json 属性详解
前端 JS 经典:package.json 属性详解
9 1
|
3天前
|
JSON 数据格式
Content type ‘text/plain;charset=UTF-8‘ not supported,这里要把测试文件转为json格式
Content type ‘text/plain;charset=UTF-8‘ not supported,这里要把测试文件转为json格式
|
4天前
|
JSON JavaScript 前端开发
|
5天前
|
JavaScript
js【详解】深拷贝 (含 JSON.parse(JSON.stringify(obj)) 的缺陷,5种手写深拷贝)
js【详解】深拷贝 (含 JSON.parse(JSON.stringify(obj)) 的缺陷,5种手写深拷贝)
5 0
|
7天前
|
JSON JavaScript 前端开发
一篇文章讲明白json文件格式详解
一篇文章讲明白json文件格式详解
|
10天前
|
JavaScript
必知的技术知识:js保留二位小数
必知的技术知识:js保留二位小数
|
10天前
|
XML JSON 开发框架
一篇文章讲明白JSON格式转换成XML格式
一篇文章讲明白JSON格式转换成XML格式
|
JavaScript 前端开发 网络协议
|
1天前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的个人健康管理系统小程序附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的个人健康管理系统小程序附带文章源码部署视频讲解等
10 2
|
1天前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的高校宿舍信息管理系统小程序附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的高校宿舍信息管理系统小程序附带文章源码部署视频讲解等
8 1