在Node中生成以毫秒为单位的时间戳

时间:2019-03-05 10:10:03

标签: javascript node.js

有人可以建议如何在Node中生成以下类型的日期时间戳吗?

2019-02-20T10:05:00.120000Z

简而言之,日期时间以毫秒为单位。

非常感谢。

6 个答案:

答案 0 :(得分:2)

new Date("2019-02-20T10:05:00.120000").getTime()

答案 1 :(得分:2)

const now = (unit) => {

  const hrTime = process.hrtime();

  switch (unit) {

    case 'milli':
      return hrTime[0] * 1000 + hrTime[1] / 1000000;

    case 'micro':
      return hrTime[0] * 1000000 + hrTime[1] / 1000;

    case 'nano':
      return hrTime[0] * 1000000000 + hrTime[1];

    default:
      return hrTime[0] * 1000000000 + hrTime[1];
  }

};

答案 2 :(得分:1)

使用Date#toISOString

  

toISOString()方法返回简化的扩展ISO格式(ISO 8601)的字符串,该字符串始终为24或27个字符(YYYY-MM-DDTHH:mm:ss.sssZ或±YYYYYY-MM-DDTHH:mm :ss.sssZ)。时区始终为零UTC偏移,如后缀“ Z”所示。

const res = (new Date()).toISOString();

console.log(res); // i.e 2019-03-05T10:15:15.080Z

答案 3 :(得分:0)

How to format a JavaScript date

看到他们谈到toLocalDateString()函数的链接,我认为这就是您想要的。

答案 4 :(得分:0)

new Date()已返回ISO格式的日期

console.log(new Date())

答案 5 :(得分:0)

对于ISO 8601这样:

  

2019-03-05T10:27:43.113Z

console.log((new Date()).toISOString());

Date.prototype.toISOString()mdn

  

toISOString()方法返回简化的扩展ISO格式(ISO 8601)的字符串,该字符串始终为24或27个字符长(分别为YYYY-MM-DDTHH:mm:ss.sssZ±YYYYYY-MM-DDTHH:mm:ss.sssZ)。时区始终为零UTC偏移,如后缀“ Z”所示。

也可以:

if (!Date.prototype.toISOString) {
  (function() {

    function pad(number) {
      if (number < 10) {
        return '0' + number;
      }
      return number;
    }

    Date.prototype.toISOString = function() {
      return this.getUTCFullYear() +
        '-' + pad(this.getUTCMonth() + 1) +
        '-' + pad(this.getUTCDate()) +
        'T' + pad(this.getUTCHours()) +
        ':' + pad(this.getUTCMinutes()) +
        ':' + pad(this.getUTCSeconds()) +
        '.' + (this.getUTCMilliseconds() / 1000).toFixed(3).slice(2, 5) +
        'Z';
    };

  }());
}