Javascript 使用Luxon矩js检查数组中的任何日期/时间是否大于当前本地时间
我目前正在根据一些json数据返回2组时间。我希望能够比较当前的本地时间,并检查它是否大于或小于json方案中的任何日期Javascript 使用Luxon矩js检查数组中的任何日期/时间是否大于当前本地时间,javascript,momentjs,lodash,luxon,Javascript,Momentjs,Lodash,Luxon,我目前正在根据一些json数据返回2组时间。我希望能够比较当前的本地时间,并检查它是否大于或小于json方案中的任何日期 const result = [ { "carId": "13122656-169f-45fa-be47-26c9d23dcb7b", "carInstances": [ { "carInstanceId": "47209558-f9e1-
const result = [
{
"carId": "13122656-169f-45fa-be47-26c9d23dcb7b",
"carInstances": [
{
"carInstanceId": "47209558-f9e1-4f81-a600-5da6ce238a6e",
"carTime": "2020-09-23T21:45:00.000+0000",
"state": "COMPLETE",
}
],
"isPaused": false,
},
{
"carId": "13122656-169f-45fa-be47-26c9d23dcb7b",
"carInstances": [
{
"carInstanceId": "47209558-f9e1-4f81-a600-5da6ce238a6e",
"carTime": "2020-09-23T21:45:00.000+0000",
"state": "COMPLETE",
}
],
"isPaused": false,
},
];
const timeAgo = (date) => {
const now = DateTime.local();
const past = DateTime.fromISO(date);
const diff = past.diff(now, 'minutes');
return Math.floor(diff.minutes);
}
const listCarTime = (res) => {
return res.reduce((acc, car) => {
acc.push(...car.carInstances.map((instance) => instance.carTime));
return acc;
}, []);
}
console.log('result', timeAgo(results)); <----Returns NAN
const结果=[
{
“carId”:“13122656-169f-45fa-be47-26c9d23dcb7b”,
“carInstances”:[
{
“carInstanceId”:“47209558-f9e1-4f81-a600-5da6ce238a6e”,
“carTime”:“2020-09-23T21:45:00.000+0000”,
“状态”:“完成”,
}
],
“isPaused”:错误,
},
{
“carId”:“13122656-169f-45fa-be47-26c9d23dcb7b”,
“carInstances”:[
{
“carInstanceId”:“47209558-f9e1-4f81-a600-5da6ce238a6e”,
“carTime”:“2020-09-23T21:45:00.000+0000”,
“状态”:“完成”,
}
],
“isPaused”:错误,
},
];
const timeAgo=(日期)=>{
const now=DateTime.local();
const pass=DateTime.fromISO(日期);
const diff=过去的.diff(现在是“分钟”);
返回数学楼层(不同分钟);
}
常量listCarTime=(res)=>{
返回分辨率降低((acc,car)=>{
acc.push(…car.carInstances.map((实例)=>instance.carTime));
返回acc;
}, []);
}
log('result',timeAgo(results)) 您正在将结果(一个数组)传递给timeAgo(date)函数,该函数期望iso格式的日期,然后(作为日期参数)尝试解析无法工作的结果。当传递正确的参数时,函数将正常工作。。您可以尝试使用适当的iso日期
timeAgo("2020-09-23T21:45:00.000+0000") // return 255017.36843333332
我需要所有的值,而不仅仅是一个,并且不需要硬编码日期,您可以在数组中迭代。
const diffrences = result.map( res => res.carInstances.map( ins => timeAgo(ins.carTime) )).flat()
console.log("result", diffrences )