使用Node.js从嵌套JSON获取特定值
我对Node.JS完全陌生。我已经编写了Node.JS代码,并在JSON文件中获得了响应。JSON是嵌套格式的。我希望在嵌套的JSON中获取、存储一个变量并只打印一个值 代码: 获取整个JSON:使用Node.js从嵌套JSON获取特定值,node.js,Node.js,我对Node.JS完全陌生。我已经编写了Node.JS代码,并在JSON文件中获得了响应。JSON是嵌套格式的。我希望在嵌套的JSON中获取、存储一个变量并只打印一个值 代码: 获取整个JSON: { "id": "0001", "type": "donut", "name": "Cake", "image": { "url": "images/0001.jpg", "width": 200,
{
"id": "0001",
"type": "donut",
"name": "Cake",
"image":
{
"url": "images/0001.jpg",
"width": 200,
"height": 200
},
"thumbnail":
{
"url": "images/thumbnails/0001.jpg",
"width": 32,
"height": 32
}
}
我只想获取缩略图下的
width=32
。我想将其存储在一个变量中,并想在控制台中打印。您可以使用JSON.parse()
将JSON字符串转换为一个对象,然后您可以像检索常规JS对象一样检索值,如下所示:
let parsedData = JSON.parse(data)
process.stdout.write(console.log(parsedData.image.url)
你可以这样做
res.on('data', (d) => {
var jsonObj = JSON.parse(d);
console.log('width = ', jsonObj.thumbnail.width);
});
parse()将
d
中接收的字符串转换为JavaScript对象。然后,您可以通过标准点符号访问对象。使用JSON.Parse(…)解析字符串。然后,该对象是一个标准JavaScript对象。您可以使用点符号(例如object.property)或通过索引符号(例如object['property'])访问它
您还可以嵌套它们,例如示例中的data.thumboil.width
res.on('data', (d) => {
let data = JSON.parse(d);
let width = data.thumbnail.width;
console.log(width);
});
然而,如果缩略图可能未定义,您应该检查它
res.on('data', (d) => {
let data = JSON.parse(d);
let width = undefined;
if (data.thumbnail) width = data.thumbnail.width;
console.log(width);
});
使用
htttps.request
这正常吗?
res.on('data', (d) => {
let data = JSON.parse(d);
let width = undefined;
if (data.thumbnail) width = data.thumbnail.width;
console.log(width);
});
var request = require('request');
var options = {
url: 'api-dev.dataoverflow.com:443/test1/test2/MR0000091/benifits?latency=RTIME',
headers: {
'Authorization': 'Basic Qjrfrfhurhfurhjfr2839gbfwj==',
'X-PruAppID': 'PlainCardPortal'
}
};
function callback(error, response, body) {
if (!error && response.statusCode == 200) {
console.log(body);
}
}
request(options, callback);