JavaScript JSON stringify() 方法
定义和用法
JSON.stringify() 方法将 JavaScript 对象转换为字符串。
将数据发送到 Web 服务器时,数据必须是字符串。
实例
例子 1
字符串化 JavaScript 对象:
var obj = { "name":"Bill", "age":19, "city":"Seattle"}; var myJSON = JSON.stringify(obj); document.getElementById("demo").innerHTML = myJSON;
例子 2
使用替换函数:
/* 把 "city" 值替换为大写:*/ var obj = { "name":"Bill", "age":"19", "city":"Seattle"}; var text = JSON.stringify(obj, function (key, value) { if (key == "city") { return value.toUpperCase(); } else { return value; } });
例子 3
使用 space 参数:
/* 为每个空格插入 10 个空格字符:*/ var obj = { "name":"Bill", "age":"19", "city":"Seattle"}; var text = JSON.stringify(obj, null, 10);
例子 4
使用 space 参数:
/* 为每个空格插入单词 SPACE:*/ var obj = { "name":"Bill", "age":"19", "city":"Seattle"}; var text = JSON.stringify(obj, null, "SPACE");
语法
JSON.stringify(obj, replacer, space)
参数值
参数 | 描述 |
---|---|
obj | 必需。要转换为字符串的值。 |
replacer |
可选。用于转换结果的函数或数组。 如果该参数是函数,则在序列化过程中,被序列化的值的每个属性都会经过该函数的转换和处理; 如果该参数是数组,则只有包含在这个数组中的属性名才会被序列化到最终的 JSON 字符串中; 如果该参数为 null 或者未提供,则对象所有的属性都会被序列化。 |
space |
可选。字符串或数字值。指定缩进用的空白字符串,用于美化输出(pretty-print)。 如果参数是个数字,它代表有多少的空格;上限为 10。该值若小于 1,则意味着没有空格; 如果该参数为字符串(当字符串长度超过 10 个字母,取其前 10 个字母),该字符串将被作为空格; 如果该参数没有提供(或者为 null),将没有空格。 |
技术细节
返回值: | A String |
---|---|
JavaScript 版本: | ECMAScript 5 |
浏览器支持
表格中的数字注明了完全支持该方法的首个浏览器版本。
方法 | Chrome | IE | Firefox | Safari | Opera |
---|---|---|---|---|---|
stringify() | 4.0 | 8.0 | 3.5 | 4.0 | 11.5 |
相关页面
JSON 教程:JSON 简介