我正在尝试将日期对象转换为长格式(可能是毫秒格式),就像我们在 java 中所做的那样。
因此,为了满足我的需要,经过反复试验,我发现了以下适合我的方法:
var date = new Date();
var longFormat = date*1; // dont know what it does internally
console.log(longFormat); // output was 1380625095292
为了验证,我使用 new Date(longFormat);
反转它,它给了我正确的输出。简而言之,我能够以某种方式满足我的需求,但我仍然不知道乘法在内部是做什么的?当我尝试将当前日期与数字 2 相乘时,它给了我 2057 年的某个日期!有谁知道,到底发生了什么?
最佳答案
长格式显示the number of ticks在 01.01.1970 之后,现在大约是 43 年。
*
运算符强制将参数转换为数字,我想,Date
对象可能使用 getTime()
进行了此类转换。
将毫秒数加倍 - 多了 43 年,因此是 2057(左右)年。
关于javascript - 将日期转换为长格式,它是如何工作的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19114614/