该函数使用iCal分析器,该分析器从.ics文件返回未来事件。 eventsParser变量包含所有这些事件。然后我必须将它们推入事件数组中才能显示。但是当我运行它时,我得到这个错误。我试图找出我有限的js知识,但没有运气。我也在StacOverflow上检查了几个相同的问题,但没有任何帮助。(JavaScript).push不是函数
function LoadEvents() {
var events = [];
var eventsParser = [];
var ical_file = 'js/sample.ics';
new ical_parser(ical_file, function(cal){
//When ical parser has loaded file
//get future events
eventsParser = cal.getFutureEvents();
//console.log(events);
eventsParser.forEach(function(events){
events.push({
title: event.SUMMARY,
startTime: event.start_time,
endTime: event.end_time,
allDay: false
});
});
});
console.log(events);
return events;
}
});
你的foreach回调重新声明一个变量的事件。 – ste2425
你已经为你的内部函数'events'命名了参数(看起来像是一个错字投票) - 它使用的是这个变量,而不是你的外部作用域'events = []'变量。 –