【问题标题】:How to extract date and time from ISO into local date and time [duplicate]如何从ISO中提取日期和时间到本地日期和时间[重复]
【发布时间】:2021-10-27 09:18:21
【问题描述】:

我在 ISO 中有一个日期和时间

"time": "2021-10-28T17:30:00.000Z"

下面是我现在正在做什么来提取日期和时间:

var dateExtract = time.substring(0, 10);
var timeExtract = time.match(/\d\d:\d\d/);

但它给了我用 ISO 写的确切日期和时间。

我想要的是在本地日期和时间中提取日期和时间。我不知道该怎么做。

【问题讨论】:

    标签: javascript typescript react-native datetime momentjs


    【解决方案1】:

    使用 Date 实例。

    let obj = {"time": "2021-10-28T17:30:00.000Z"}
    const dateTime = new Date(obj.time);
    const date  = dateTime.toLocaleDateString().replace(/\//g, '-');
    // '28-10-2021'
    const time = dateTime.toLocaleTimeString()
    // '18:30:00' since I am in (+1)
    

    在这个类似的Question中也能找到一堆答案

    【讨论】:

      【解决方案2】:

      只需创建一个日期对象并使用toLocaleStringtoLocaleDateStringtoLocaleTimeString

      const date = new Date("2021-10-28T17:30:00.000Z")
      console.log(date.toLocaleString())
      console.log(date.toLocaleDateString().replaceAll("/","-"))
      console.log(date.toLocaleTimeString())

      【讨论】:

      • 先生,请问本地时间怎么获取?
      • 查看更新的答案
      【解决方案3】:

      您以错误的方式获取日期。 当您阅读日期时,应将其转换为您的语言环境,以便您从 UTC 日期获得准确日期

      你可以使用 JS Date() 函数或时刻库

      let d = new Date("2021-10-28T17:30:00.000Z")
      
      d.toDateString()
      
      d.toLocaleDateString()
      

      检查日期函数以获取日期、月份、年份、时间、秒或时间戳

      参考How to format a JavaScript date

      https://www.w3schools.com/js/js_dates.asp

      https://www.w3schools.com/js/js_date_formats.asp

      或者你可以使用外部矩库 https://momentjs.com/

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-10-29
        • 2012-10-06
        • 2020-06-24
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多