代码之家  ›  专栏  ›  技术社区  ›  Abhisar Tripathi

我需要从1609891200000开始的正确时间,但我不知道为什么我总是用5:30作为时间

  •  0
  • Abhisar Tripathi  · 技术社区  · 5 年前
    var now = moment(1609891200000, "x").format('MMM DD h:mm A');
    var x = new Date(1609891200000);
    console.log(now); // Prints Jan 06 12:00 AM
    console.log(x.toLocaleTimeString()); // Prints 05:30:00
    

    我需要一个方法来获得正确的时间,即 12:00 AM 不利用时间。 有人能帮忙吗??

    1 回复  |  直到 5 年前
        1
  •  1
  •   shutsman    5 年前

    var date = new Date(Date.UTC(2012, 11, 12, 3, 0, 0));
    
    // toLocaleTimeString() without arguments depends on the implementation,
    // the default locale, and the default time zone
    console.log(date.toLocaleTimeString());
    // → "7:00:00 PM" if run in en-US locale with time zone America/Los_Angeles
    

    相反,你可以使用

    var x = new Date(1609891200000);
    x.toGMTString() // "Wed, 06 Jan 2021 00:00:00 GMT"
    x.toUTCString() // "Wed, 06 Jan 2021 00:00:00 GMT"
    x.toISOString() // "2021-01-06T00:00:00.000Z"