1
我有一個函數,它獲取Date並從JSON文件中讀取事件。當日期位於事件的時間段內時,它應該被添加到數組中,該數組應該在函數結束時返回。將JSON對象推入數組
function getEvents(askDate) {
var askDate = new Date(askDate);
var result = new Array();
$.getJSON(EVENTS_JSON, function(data) {
$.each(data.events, function(key, entry) {
if(isInPeriod(askDate.setHours(0,0,0,0), new Date(entry.date[0]).setHours(0,0,0,0), new Date(entry.date[1]).setHours(0,0,0,0))) {
result.push(entry);
}
});
});
if(result.length === 0) {
result = false;
}
return result;
}
不幸的是我得到以下錯誤:「TypeError:result.push不是函數」。
isInPeriod函數工作正常,以前我有一個控制檯輸出就在result.push()之前,它是JSON對象。
JSON的樣子:
{
"events": [
{
"id": 1,
"name": "Example Event",
"date": [
"2014/11/25 07:30:00",
"2014/11/25 09:00:00"
],
"desc": "Lorem Ipsum sim dolor",
"image": "http://upload.wikimedia.org/wikipedia/commons/8/84/Example.svg",
"adress": "Example Road 12",
"youtube": "https://www.youtube.com/watch?v=_5DqL5-izAY",
"tags": [
"Example"
],
"categories": [
"main_category",
"sub_category",
"sub_sub_category"
]
}
]
}
'result.events.push(entry)'? – 2014-11-25 13:43:51