javascript - 我如何从纪元特定时间开始计算时间? jQuery 或 JS

标签 javascript jquery html timer epoch

我通过json获取时间,就像这样

"timeAddedToDrive": 1398813844020

我想知道我是否可以创建一个从该时间开始计数的 jQuery 或 JS,这样用户就可以看到自事件发生以来经过了多长时间,例如

event was 48:05 minutes ago...

这可能吗?

PD:对我的英语表示歉意,我知道它很糟糕

最佳答案

我建议您使用库 moment.js .

您可以使用此库将日期值从各种存储格式转换为其他格式,包括您正在寻找的人类可读的描述。

函数 .fromNow() 接近您正在寻找的内容,但可能不够精确。只需多一点努力,您就可以使用 moment.js 来确定时间戳相对于现在的 diff,将其转换为 duration,然后获取持续时间的分钟和秒。

var timeAddedToDrive = 1398813844020;

var now = moment();
var timePassed = now.diff(timeAddedToDrive);

// fromNow function works but is not precise
alert( moment(timeAddedToDrive).fromNow());

// for more precision we'll get the minutes and seconds from the DURATION
var seconds = moment.duration(timePassed).seconds(); 
var minutes = moment.duration(timePassed).minutes(); 
var output = "event was " +
    minutes.toString() + ":" + 
    seconds.toString() + " minutes ago"

alert( output );

这是一个显示两种方法的 jsFiddle:jsFiddle

希望有帮助。

关于javascript - 我如何从纪元特定时间开始计算时间? jQuery 或 JS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23377249/

相关文章:

javascript - sails 中的嵌套模型和 Controller 不起作用

javascript - 在行/单元格之间调用表的 Onmouseout 函数

jquery - Ember : this. get 返回一个 getter (而不是我真正想要的对象)

php - Ajax 调用 php 文件中的外部 json 对象

html - Twig UTF8 字符编码 - Symfony2

php - fullcalendar - 选择回调函数 - 不会在新选择时清除事件

javascript - Angular UI 选项卡 - 单独的选项卡内容和选项卡标题

Jquery:在元素的类被删除后,函数继续在元素上执行

javascript - 如果一个被禁用,两个表单输入可以有相同的名称吗?

java - HTML 混合编码?