让我来详细讲解一下“js解析与序列化json数据(一)json.stringify()的基本用法”的完整攻略。
1. 什么是JSON
JSON是一种轻量级的数据交换格式,它的全称是JavaScript Object Notation,简称为JSON。JSON的格式和JavaScript中的对象字面量的格式非常相似,因此很容易被 JavaScript 解析和生成,也容易被其他程序语言解析和生成。
JSON 的格式为:
{
"name": "张三",
"age": 18,
"gender": "男"
}
其中,每个键值对之间用逗号(,)分隔,键和值之间用冒号(:)分隔,对象的开始使用左花括号({),结束使用右花括号(})。
2. JSON.stringify()
JSON.stringify()是一个内置的方法,用于将 JavaScript 对象转换成 JSON 字符串。JSON.stringify()的基本使用方法如下:
JSON.stringify(value[, replacer[, space]])
其中,value是要转换的 JavaScript 对象,replacer是一个回调函数或者数组,用来过滤转换后的结果,space表示空格的数目或者使用的空格字符串(默认情况下没有空格)。
下面我们分别来看一下使用方法和示例。
2.1 使用方法
我们可以使用JSON.stringify()将JavaScript对象转换成JSON字符串并保存到本地文件中。具体代码如下:
let obj = {
name: "张三",
age: 18,
gender: "男"
};
let json_str = JSON.stringify(obj);
// 将JSON字符串保存到本地文件中
var fs = require('fs');
fs.writeFileSync('data.json', json_str);
其中,我们首先定义一个JavaScript对象obj,然后使用JSON.stringify()将其转换为JSON字符串,最后使用Node.js内置的fs模块将JSON字符串保存到本地文件中(文件名为data.json)。
2.2 示例
现在我们通过一些例子来看看JSON.stringify()的使用方法。
示例1:过滤结果
let obj = {
name: "张三",
age: 18,
gender: "男"
};
let json_str = JSON.stringify(obj, ['name','gender']);
console.log(json_str); // {"name":"张三","gender":"男"}
在上述示例中,我们定义了一个JavaScript对象obj,然后使用JSON.stringify()将其转换为JSON字符串,并通过replacer参数将结果过滤,只保留了"name"和"gender"两个属性。
示例2:格式化输出
let obj = {
name: "张三",
age: 18,
gender: "男"
};
let json_str = JSON.stringify(obj, null, 2);
console.log(json_str);
在这个示例中,我们同样定义了一个JavaScript对象obj,然后使用JSON.stringify()将其转换为JSON字符串,并通过space参数,使用2个空格的缩进格式化输出。输出结果如下所示:
{
"name": "张三",
"age": 18,
"gender": "男"
}
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:js解析与序列化json数据(一)json.stringify()的基本用法 - Python技术站