如何使用javascript将12小时日期时间转换为时间戳

时间:2015-11-26 20:45:31

标签: javascript datetime timestamp unix-timestamp

我有以下格式28/11/2015 09:41 PM的日期时间,我想将其转换为纪元时间戳。我怎么能用javascript做到这一点?

此外:我想从该时间戳添加和减去7200秒并将其转换回原始格式。我怎样才能做到这一点?是否有必要先将datetime转换为时间戳?

2 个答案:

答案 0 :(得分:2)

有一个很棒的图书馆!

http://momentjs.com/

答案 1 :(得分:0)

查找有关JavaScript内置对象的信息的好地方是MDN,它在日期时间(或实际上只是日期)对象上有这篇文章(https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date)。

从Date对象获取纪元时间戳的方法是使用getTime()函数。它返回自1970年1月1日以来的毫秒数。

FragmentManager fragmentManager = getFragmentManager();
DayHomeworkDialogFragment dayHomeworkDialogFragment = new DayHomeworkDialogFragment();
dayHomeworkDialogFragment.show(fragmentManager, "my_day_homework_fragment");

然后您只需添加秒数即可:

var dateNow = Date.now();
var epochNow = dateNow.getTime();

然后将其转换回来:

epochNow += (7200 * 1000); // * 1000 because it's in milliseconds
祝你好运!

注意

注意JavaScript Date实现中的不一致性,尤其是在早期版本的Internet Explorer中。正如一些人所指出的,像moment.js(http://momentjs.com/)这样的好库对于防止出现问题非常有帮助。但是,如果您只使用完全现代化的浏览器或节点,则不应该有太多问题。