如何在jquery中获得节省的时间和当前时间的差异?

时间:2010-10-25 15:48:34

标签: javascript jquery datetime

我想在javascript或jquery中获取已保存时间和当前时间之间的时差。我节省的时间看起来像Sun Oct 24 15:55:56 GMT+05:30 2010

java中的日期格式代码如

String newDate = "2010/10/24 15:55:56";
DateFormat format = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
Date date = format.parse(newDate);

如何将其与当前时间进行比较并获得差异? 在jquery或javascript中是否有任何内置函数?

任何建议或链接都​​会感激不尽!!!

提前致谢!

更新

日期在数据库中存储为varchar。我正在将它重新转换为String变量,然后将其更改为java.util.Date对象。 java代码看起来像

String newDate = "2010/10/24 15:55:56";
DateFormat format = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
Date date = format.parse(newDate);

date对象已发送给客户端。在那里,我想比较保存的日期和当前日期,并希望显示时间差异像2秒前,2小时前,2天前等...就像在Facebook中一样。我在java脚本中经历了一些日期到时间戳转换教程,现在我可以得到时间戳的差异。现在,我想知道如何将其改为某种格式,如“2秒或2天或24小时”?或者,我将如何将其更改为日期格式???

3 个答案:

答案 0 :(得分:6)

将它们转换为时间戳,这些时间戳实际上是整数,可以相互减去。您只需将生成的时间戳转换回javascript日期对象即可。

var diff = new Date();
diff.setTime( time2.getTime()-time1.getTime() );

答案 1 :(得分:4)

你不需要显式转换,只需这样做:

var timediff = new Date() - savedTime;

这将返回以毫秒为单位的差异。

答案 2 :(得分:2)

jQuery不会添加任何用于处理日期的内容。如果Datejs不足,我建议您使用the standard JavaScript Date API

也许你可以准确地澄清你的目标是什么输入和输出。 “区别是什么意思?”有多种方法可以表达时间瞬间(主要是单位和输出字符串格式)之间的差异。


编辑:因为你说你正在使用jQuery,使用CuteTime怎么样? (Demo page