我有一些JSON
来分析
这是此问题所必需的片段。
"UpdatedDate":"\/Date(1311377875937)\/"
我不知道该号码是,但更新日期是项目上次更新的日期
此外,不管它是什么,我怎么能知道它是否在20秒前或更短时间内更新过?
答案 0 :(得分:2)
这个数字是自1970年以来的DateTime,以毫秒为单位。如果你将2个DateTimes除以1000并减去它们,你应该得到相差几秒。
var secondsDifference = (new Date() - UpdateDate)/1000;
答案 1 :(得分:0)
一些JSON编码器(我不确定哪些,或者可能是手动),以这种格式保存日期。该数字是 unix时间戳,表示更新日期。
要从中获取Date
对象,您需要解析字符串中的数字并将其传递给Date()
构造函数。
var dateStr = obj.UpdatedDate;
var dateInfo = dateStr.match(/\/Date\((\d+)\)\//);
var update = new Date(parseInt(dateInfo[1], 10));
要查看这是否在20秒内,您可以从新的(代表)当前时间中减去此日期对象。
var diff = Date.now() - update; // This will be a value in milliseconds
var diffSec = diff/1000; // Now it's in seconds