问题复现
1 | // 默认情况下数据是这样的 |
解决方案
方案一:新开一个对象处理
1 | let signInfo = [ |
方案二:利用缺省参数
1 | let signInfo = [ |
语法
1 | JSON.stringify(value[, replacer [, space]]) |
- value
- 将要序列化成 一个 JSON 字符串的值。
- replacer 可选
- 如果该参数是一个函数,则在序列化过程中,被序列化的值的每个属性都会经过该函数的转换和处理;
- 如果该参数是一个数组,则只有包含在这个数组中的属性名才会被序列化到最终的 JSON 字符串中;
- 如果该参数为 null 或者未提供,则对象所有的属性都会被序列化。
- space 可选
- 指定缩进用的空白字符串,用于美化输出(pretty-print);
- 如果参数是个数字,它代表有多少的空格;上限为10。
- 该值若小于1,则意味着没有空格;
- 如果该参数为字符串(当字符串长度超过10个字母,取其前10个字母),该字符串将被作为空格;
- 如果该参数没有提供(或者为 null),将没有空格。
基本使用
注意:
- JSON.stringify可以转换对象或者值(平常用的更多的是转换对象)
- 可以指定
replacer
为函数选择性的地替换 - 也可以指定
replacer
为数组,可转换指定的属性
1 | // 1. 转换对象 |