【问题标题】:How to convert local time to UTC time same date but time set to midnight如何将本地时间转换为 UTC 时间相同的日期但时间设置为午夜
【发布时间】:2018-05-19 01:32:56
【问题描述】:

我有这个时间

Tue Dec 05 2017 17:05:51 GMT+0530 (IST)

我想把它转换成

Tue Dec 05 2017 00:00:00 GMT

【问题讨论】:

  • 将字符串转换为日期,更改时间,重新转换为字符串。如果这些步骤中的任何一个阻碍了您(在您研究它们之后),请再次询问。
  • 你也可以使用这个插件:momentjs.com
  • 对 Moment.js 非常陌生。有什么指点吗?

标签: javascript momentjs


【解决方案1】:

这是最适合我们的解决方案。请记住,这会返回一个您可能不需要的 ISO 字符串。

const formatDate = (dateValue) => {
  const date = new Date(dateValue)
  const minuteOffset = date.getTimezoneOffset()
  date.setMinutes(minuteOffset * -1)
  return date.toISOString()
}

【讨论】:

    【解决方案2】:

    因为您要求 UTC,所以我认为这是最简单的:

    var input = "Tue Dec 05 2017 17:05:51 GMT+0530 (IST)"
    var date = new Date(input);
    date.setHours(1);
    date.setMinutes(0);
    date.setSeconds(0);
    date.setMilliseconds(0);
    console.log(date.toUTCString());

    【讨论】:

      【解决方案3】:

      您可以尝试这样做:

      //Convert string to Date object
      var d = new Date(Date.parse('Tue Dec 05 2017 17:05:51 GMT+0530 (IST)'))
      

      然后运行:

      //crux: get utc offset from epoch in milliseconds and use .toUTCString(...) to offset timezone
      var ms = Date.UTC(d.getYear()+1900, d.getMonth(), d.getDate(), 0, 0, 0)
      console.log(new Date(ms).toUTCString(ms)) 
      

      如果这不符合您的要求,请告诉我。谢谢。

      【讨论】:

        【解决方案4】:

        你可以试试这个->

        var date = new Date().toString();
        var dateArray = date.split(' ');
        dateArray.splice(4);
        dateArray.push('00:00:00 GMT');
        var newDate = dateArray.join(' ');
        console.log(newDate);

        【讨论】:

        • 你可以,但它看起来像背部疼痛。为什么在删除 (IST) 后不使用 Date.parse()
        • 因为Date.parse() 方法返回数字。我认为他想要一个包含时间的字符串00:00:00。参考->developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/…
        • 有了这个,使用 Date.getTime() 来获取 unix 时间戳值似乎会很痛苦。使用 Moment.js 有什么建议吗?
        猜你喜欢
        • 1970-01-01
        • 2012-10-07
        • 1970-01-01
        • 2016-07-29
        • 1970-01-01
        • 1970-01-01
        • 2019-03-30
        • 2016-08-27
        • 2012-01-11
        相关资源
        最近更新 更多