JSON.stringify方法参数详解
Posted shulan-hu
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JSON.stringify方法参数详解相关的知识,希望对你有一定的参考价值。
一、定义
JSON.stringify(value[, replacer [, space]])方法是将value转换成一个JSON字符串。
二、参数value(必填,对象或者数组)
value的值一般是对象或者数组,基础数据类型及对应的包装类型是会被转换成相应字符串,本身数据类型是字符串的有点特殊。本身数据类型是函数,symbol,undefined的,结果为undefined。本身值是NaN,Infinity,null,结果是 null。value值假如有toJSON()方法,则结果由这个方法定义。且仅序列化可枚举的属性。
比如:JSON.stringify(1) === ‘1‘ // true
JSON..stringify(‘1‘).length// 3
JSON..stringify(Symbol(1))// undefined
JSON.stringify(Object.create(null, { x: { value: ‘x‘, enumerable: false }, y: { value: ‘y‘, enumerable: true } } ) ); // ‘{"y":"y"}‘
三、参数replacer(可选,函数或对象)
如果该参数是一个函数,则在序列化过程中,被序列化的值的每个属性都会经过该函数的转换和处理;如果该参数是一个数组,则只有包含在这个数组中的属性名才会被序列化到最终的 JSON 字符串中。----引自MDN
四、参数space(可选,数字或字符串)
指定缩进用的空白字符串,用于美化输出;如果参数是个数字,它代表有多少的空格;上限为10。该值若小于1,则意味着没有空格;如果该参数为字符串(当字符串长度超过10个字母,取其前10个字母),该字符串将被作为空格;如果该参数没有提供(或者为 null),将没有空格。----引自MDN
以上是关于JSON.stringify方法参数详解的主要内容,如果未能解决你的问题,请参考以下文章