创建基于JSON响应的计数-JavaScript

创建基于JSON响应的计数-JavaScript,javascript,json,Javascript,Json,我试图从技术上未包含的web服务JSON中提取一些有用的信息。JSON将返回如下内容: [ { "Val1": "Value One", "Status": "Okay", "endDate": "2017 - 09 - 30 T00: 00: 00 " }, { "Val2": "Value Two", "Status": "Okay", "endDate": "2017 - 08 - 24 T00: 00: 00 " } ] 有没有办法找到

我试图从技术上未包含的web服务JSON中提取一些有用的信息。JSON将返回如下内容:

[ {
   "Val1": "Value One",
   "Status": "Okay",
   "endDate": "2017 - 09 - 30 T00: 00: 00 "
   }, 
   {
   "Val2": "Value Two",
   "Status": "Okay",
   "endDate": "2017 - 08 - 24 T00: 00: 00 "
} ]
有没有办法找到当前日期(动态)和endDate结果中日期之间的天数差异,并将其添加到计数中

然后,这将用于类似以下内容:
-10天内的结束日期:#
-20天内的结束日期:#

等等

提前感谢您的帮助。

您可以使用moment.js

例如:


请参考以下代码段:

let endDate = new Date(JsonArray[index].endDate.replace(/ /g, ''));
let msDelta = endDate.getTime() - new Date().getTime();
let dayDelta = Math.floor(msDelta / 1000 / 3600 / 24);
工作演示:

var json=[{
“价值1”:“价值1”,
“状态”:“好的”,
“结束日期”:“2017-09-30 T00:00:00”
}, 
{
“价值2”:“价值2”,
“状态”:“好的”,
“结束日期”:“2017-08-24 T00:00:00”
} ]
forEach(obj=>{
让endDate=新日期(obj.endDate.replace(//g',);
让msDelta=endDate.getTime()-new Date().getTime();
让dayDelta=数学楼层(msDelta/1000/3600/24);
log(`End date within${dayDelta}days`);

});首先,1。您需要使用endDate新建一个日期对象;2.endDate.getTime()-new Date()。getTime()是当前日期和结束日期之间的差异;3.您可以根据delta ms.Fantastic计算出更粗粒度的时间差-非常感谢您花时间tibetty和@Endound向我展示这一点。我讨厌成为累赘,但我应该如何将不同的计数转移到不同的变量?i、 e“在0-30天内到期”和“在31-50天内到期”简单比较btwn dayDelta和间隔限制(例如,0-31、31-50),然后您可以相应地分配您的描述。
let endDate = new Date(JsonArray[index].endDate.replace(/ /g, ''));
let msDelta = endDate.getTime() - new Date().getTime();
let dayDelta = Math.floor(msDelta / 1000 / 3600 / 24);