给定以下 json,我如何过滤它以提取并返回该对象的会话匹配当前时间“现在”到下一个 3 小时的相关对象?(意思是,如果我的当前时间是23 May 2013 9 am
,将返回对象 1、2、3、4 和 6。)
使用像http://goessner.net/articles/JsonPath/JSONPath
这样的库会更有效地工作吗?
var schedule_list = [
{
id: 1,
name: 'John',
sessions: [
{
id: 1,
date: "23-May-2013",
start: "1000",
end: "11000"
},
{
id: 2,
date: "23-May-2013",
start: "1300",
end: "1500"
}
]
},
{
id: 2,
name: 'Mary',
sessions: [
{
id: 1,
date: "23-May-2013",
start: "1000",
end: "11000"
},
{
id: 2,
date: "23-May-2013",
start: "1300",
end: "1500"
}
]
},
{
id: 3,
name: 'Peter',
sessions: [
{
id: 1,
date: "23-May-2013",
start: "1000",
end: "11000"
},
{
id: 2,
date: "23-May-2013",
start: "1300",
end: "1500"
}
]
},
{
id: 4,
name: 'Joe',
sessions: [
{
id: 1,
date: "23-May-2013",
start: "1000",
end: "11000"
},
{
id: 2,
date: "23-May-2013",
start: "1300",
end: "1500"
}
]
},
{
id: 5,
name: 'Max',
sessions: [
{
id: 1,
date: "23-May-2013",
start: "1600",
end: "1700"
}
]
},
{
id: 6,
name: 'Tom',
sessions: [
{
id: 1,
date: "23-May-2013",
start: "1200",
end: "1300"
}
]
}
];
我正在寻找用于日期时间对象比较的通用解决方案。不仅仅是基于字符串的比较。本质上,我的“当前时间”可以由用户更改,并且服务器返回的日期、开始、结束日期和时间(在我的 JSON 中)都可以是可变的。