Node.js-用于解析的中的json数据时,我们可以使用javascript引擎的JSON.parse()函数。
使用JSON数据的信息很少
键:值对是基础。
{} 包含一个元素。
[]包含一个元素数组。
一个元素可以有多个key :value对。
值可以是简单的值,例如数字或字符串等,也可以是元素或数组。
数组中的元素可以使用索引访问
多个键:值对或元素用逗号分隔
以下示例可帮助您使用JSON.parse()函数并从JSON对象访问元素。
// json数据
var jsonData = '{"persons":[{"name":"John","city":"New York"},{"name":"Phil","city":"Ohio"}]}';
// 解析json
var jsonParsed = JSON.parse(jsonData);
// 访问元素
console.log(jsonParsed.persons[0].name);
运行nodejs-parse-json.js的终端输出
arjun@arjun-VPCEH26EN:~/workspace/nodejs$ node nodejs-parse-json.js
John
我们将读取一个包含JSON数据的File到一个变量,然后解析该数据。
考虑以下JSON文件sample.json
{
"persons": [{
"name": "John",
"city": "Kochi",
"phone": {
"office": "040-528-1258",
"home": "9952685471"
}
},
{
"name": "Phil",
"city": "Varkazha",
"phone": {
"office": "040-528-8569",
"home": "7955555472"
}
}
]
}
Node.js JSON文件解析程序
// 引入文件系统模块
var fs = require('fs');
// 读取文件sample.json文件
fs.readFile('sample.json',
// 读取文件完成时调用的回调函数
function(err, data) {
// json数据
var jsonData = data;
// 解析json
var jsonParsed = JSON.parse(jsonData);
// 访问元素
console.log(jsonParsed.persons[0].name + "'s office phone number is " + jsonParsed.persons[0].phone.office);
console.log(jsonParsed.persons[1].name + " is from " + jsonParsed.persons[0].city);
});
运行上面的Node.js程序。
运行nodejs-parse-json-file.js的终端输出
arjun@arjun-VPCEH26EN:~/workspace/nodejs$ node nodejs-parse-json-file.js
John's office phone number is 040-528-1258
Phil is from Kochi
在这个Node.js教程- Node.js JSON文件解析-我们已经学会了使用JSON.parse()函数,在示例Node.js程序的帮助下从一个变量或文件解析JSON数据。