Javascript 如何在NodeJ中使用对象
我创建了这个函数Javascript 如何在NodeJ中使用对象,javascript,node.js,Javascript,Node.js,我创建了这个函数get_flight\u by_date,它从API中提取航班数据:航班号、起飞、目的地 当我调用此函数时,我需要显示目的地和出发地点。我所做的是: 函数按日期获取航班(日期,回调){ 让请求=要求(“请求”); 让url= "http://api.aviationstack.com/v1/flights?access_key=xxxxxx&flight_status=scheduled"; 请求(url、函数(错误、响应、正文){ 如果(错误){ 日志(“错误:”,错误); 回
get_flight\u by_date
,它从API中提取航班数据:航班号、起飞、目的地
当我调用此函数时,我需要显示目的地和出发地点。我所做的是:
函数按日期获取航班(日期,回调){
让请求=要求(“请求”);
让url=
"http://api.aviationstack.com/v1/flights?access_key=xxxxxx&flight_status=scheduled";
请求(url、函数(错误、响应、正文){
如果(错误){
日志(“错误:”,错误);
回调(err);
}否则{
让vol=JSON.parse(body);
num=vol.pagination.limits;
结果=[];
for(设i=0;i<10;i++){
航班日期=卷数据[i]。航班日期;
一次航班={
编号:vol.data[i].航班号,
日期:卷数据[i]。航班日期,
出发时间:vol.data[i].出发时间,时区,
到达:vol.data[i].arrival.timezone,
发件人:vol.data[i].出发机场,
收件人:vol.data[i].arrival.airport
};
结果:推送(一次飞行);
}
回调(null,result);
}
});
}
功能按航班日期获取航线(日期、请求、回复){
按日期获取航班(日期、函数(错误、结果){
如果(错误){
控制台日志(“错误”);
}否则{
var-links=[];
map(result=>{
links.push(
“来自”+
" " +
结果[0][离开]+
" " +
“到”+
" " +
结果[0][到达]
);
});
控制台日志(链接);
}
});
}
在航班日期(“2020-11-02”)前获得航线;
我在控制台中得到的信息是:
ReferenceError:未定义离开
从快速阅读来看,错误可能与结果[0][离开]
有关。可能需要是result[0][“出发”][code>(对于result[0][arrival][arrival][code>,也需要是result[0][“arrival”][arrival][/code>)。get\u flight\u by\u date返回一个数组,该数组在get\u route\u by\u-by\u-flight\u-date的第6行循环
因此,我们应该有如下代码
function get_route_by_flight_date(date, req, res) {
get_flight_by_date(date, function (err, results) {
if (err) {
console.log("error");
} else {
var links = [];
results.map(result => {
links.push(
"from " +
" " +
result.departure +
" " +
"to" +
" " +
result.arrival
);
});
console.log(links);
}
});
}
变化如下:
- 我已将输入从“结果”更改为“结果”,使其更有意义
- 当您循环时,迭代的对象被命名为“result”——就像您的代码中一样
- 要点:结果是一个JSON对象。因此,访问出发和到达作为result.arrival和result.deviation,而不是result[arrival]和result[deviation]。在后一种情况下,代码正在寻找一个名为execution和arrival的变量,而我们打算引用对象的键,它们被表示为键
按航班日期获取路线
从未访问过出发
。它们存在于不同的作用域中。result.map(result=>{
您引用的result[0]
很难理解。那么我应该怎么做呢?它将是result.exition
,您在数组上的映射(应该是forEach),您应该控制台.log(result)在使用之前,请确保您访问的内容正确。此结果[0][deference]
应为结果[0]。deference
。结构[deference]
正在查找该函数中不存在的名为deference
的变量。