Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/441.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在jquery中获得保存时间和当前时间的差异?_Javascript_Jquery_Datetime - Fatal编程技术网

Javascript 如何在jquery中获得保存时间和当前时间的差异?

Javascript 如何在jquery中获得保存时间和当前时间的差异?,javascript,jquery,datetime,Javascript,Jquery,Datetime,我想在javascript或jquery中获得保存时间和当前时间之间的时差。我节省的时间看起来像太阳10月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); 如何将其与当前时间进行比

我想在javascript或jquery中获得保存时间和当前时间之间的时差。我节省的时间看起来像
太阳10月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
。我将其检索为一个字符串变量,然后将其更改为
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);

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

jQuery没有添加任何用于处理日期的内容。我建议在不充分的情况下使用

也许你可以明确你的目标是什么输入和输出。你所说的“差异”是什么意思?有不止一种方法可以表达到时间上的不同瞬间(主要是单位和输出字符串格式)



编辑:既然你说你正在使用jQuery,那么使用它怎么样?()

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

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

您不需要显式转换,只需执行以下操作:

var timediff = new Date() - savedTime;

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

我想补充一点,如果差值大于一天,您需要进行一些额外的处理来计算天数。谢谢您的回答。我把两个时间都改成了时间戳,得到了不同的结果。现在,我如何将其更改为最新版本?我更新了我的问题,并解释了有关我的问题的更多信息。请看一看。@NooBDevelopeR最简单的解决方案是让java将时间戳转换为可读格式,如2010/10/24 15:55:56。但要实现您想要的(“2秒或2天或24小时”),您必须使用ifs或case select为自己构建一个格式函数,例如(伪代码)`if time<60:return(time+“seconds”);如果时间<3600:返回((时间/60)+“分钟”)`等等,谢谢。这正是我所需要的。