【发布时间】:2018-10-10 10:14:06
【问题描述】:
所以我对 Node.js 非常陌生,我想做的是使用 OpenWeatherMap 收集天气数据,然后将它们打印到控制台......但是我遇到了一个奇怪的问题,我尽管研究了数小时,但还是无法解决
所以,从 JSON 中读取天气数据很简单,除了一组项目,这里有一张图片: Console
如您所见,它在温度正常时读取“未定义 12.5”,但实际描述是未定义的,即使它就在那里,看看 OpenWeatherMap 写的 JSON 文件,有些奇怪
{
"coord": {
"lon": -1.61,
"lat": 54.98
},
"weather": [
{
"id": 876,
"main": "Haze",
"description": "haze",
"icon": "50d"
}
],
"base": "stations",
"main": {
"temp": 12.2,
"pressure": 1014,
"humidity": 71,
"temp_min": 11,
"temp_max": 14
}
如您所见,天气项目出于某种原因有括号,手动删除它们可以解决问题并且可以完美地阅读它们,但是,我怎样才能解决问题,使它们一开始就不存在?我究竟做错了什么?如果你能想到任何解决这个问题的方法
这就是我收集和使用数据的方式:
fs.writeFile('uk.json', JSON.stringify(currentWeather, null, 2), (error) => {
if (error) throw err;
console.log('Weather data written');
var uk = require('./uk.json');
console.log(uk.weather.main + ' ' + uk.main.temp);
})
我是 Node.js 的新手,我唯一的编程经验是 Visual Basic,所以请不要对我太技术化,如果可能的话,尽量为新手解释得通俗易懂,谢谢你的理解
【问题讨论】:
标签: node.js json openweathermap