<p>JSON.stringify()方法是将一个JavaScript值(对象或者数组)转换为一个JSON字符串,如果指定了replacer是一个函数,则可以替换值,或者如果指定了replacer是一个数组,可选的仅包括指定的属性。</p><p>JSON.stringify()方法用于将JavaScript值转换为JSON字符串。</p><p><span style="color: rgb(255, 0, 0);">语法</span></p><pre class="brush:js;toolbar:false">JSON.stringify(value[,replacer[,space]])</pre><p><span style="color: rgb(255, 0, 0);">参数说明:</span></p><p>value:必需,要转换的JavaScript值(通常为对象或数组)。</p><p>replacer:可选。用于转换结果的函数或数组。</p><p>如果replacer为函数,则JSON.stringify将调用该函数,并传入每个成员的键和值。使用返回值而不是原始值。</p><p>如果此函数返回undefined,则排除成员。根对象的键是一个空字符串:""。</p><p>如果replacer是一个数组,则仅转换该数组中具有键值的成员。成员的转换顺序与键在数组中的顺序一样。</p><p>space:可选,文本添加缩进、空格和换行符。</p><p>如果space是一个数字,则返回值文本在每个级别缩进指定数目的空格,如果space大于10,则文本缩进10个空格。space也可以使用非数字,如:\t。</p><p><span style="color: rgb(255, 0, 0);">返回值:</span></p><p><span style="font-size: 18px; color: rgb(0, 112, 192);">返回包含JSON文本的字符串。</span></p><p>不可枚举的属性会被忽略。</p><p>返回值:</p><pre class="brush:js;toolbar:false">JSON.stringify({}); // '{}' JSON.stringify(true); // 'true' JSON.stringify("foo"); // '"foo"' JSON.stringify([1, "false", false]); // '[1,"false",false]' JSON.stringify({ x: 5 }); // '{"x":5}'</pre><p>使用案例:</p><pre class="brush:js;toolbar:false">var str = {"name":"潘旭博客", "site":"https://panxu.net"} str_pretty1 = JSON.stringify(str) document.write( "只有一个参数情况:" ); document.write( "<br>" ); document.write("<pre>" + str_pretty1 + "</pre>" ); document.write( "<br>" ); str_pretty2 = JSON.stringify(str, null, 4) //使用四个空格缩进 document.write( "使用参数情况:" ); document.write( "<br>" ); document.write("<pre>" + str_pretty2 + "</pre>" ); // pre 用于格式化输出</pre><p style="white-space: normal;">关于序列化,有下面五点注意事项:</p><p style="white-space: normal;">1、非数组对象的属性不能保证以特定的顺序出现在序列化后的字符串中。</p><p style="white-space: normal;">2、布尔值、数字、字符串的包装对象在序列化过程中会自动转换成对应的原始值。</p><p style="white-space: normal;">3、undefined、任意的函数以及 symbol 值,在序列化过程中会被忽略(出现在非数组对象的属性值中时)或者被转换成 null(出现在数组中时)。</p><p style="white-space: normal;">4、对包含循环引用的对象(对象之间相互引用,形成无限循环)执行此方法,会抛出错误。</p><p style="white-space: normal;">5、所有以 symbol 为属性键的属性都会被完全忽略掉,即便 replacer 参数中强制指定包含了它们。</p><p>好了,<span style="color: rgb(51, 51, 51); font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; background-color: rgb(255, 255, 255);">以上就是“json.stringify()返回值类型详解:json.stringify()之后变为什么类型值”的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流。</span></p>