如何从 ISO 中提取日期和时间到本地日期和时间
How to extract date and time from ISO into local date and time
我在 ISO 中有一个日期和时间
"time": "2021-10-28T17:30:00.000Z"
下面是我现在提取日期和时间的操作:
var dateExtract = time.substring(0, 10);
var timeExtract = time.match(/\d\d:\d\d/);
但它给了我用 ISO 写的确切日期和时间。
我想要的是提取本地日期和时间中的日期和时间。我不知道该怎么做。
只需创建一个日期对象并使用 toLocaleString or toLocaleDateString 或
toLocaleTimeString
const date = new Date("2021-10-28T17:30:00.000Z")
console.log(date.toLocaleString())
console.log(date.toLocaleDateString().replaceAll("/","-"))
console.log(date.toLocaleTimeString())
您获取日期的方法有误。
当您阅读日期时,应将其转换为您的语言环境,以便您从 UTC 日期
中获得准确的日期
您可以使用 JS Date() 函数或 moment 库
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/
使用 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
中找到答案
我在 ISO 中有一个日期和时间
"time": "2021-10-28T17:30:00.000Z"
下面是我现在提取日期和时间的操作:
var dateExtract = time.substring(0, 10);
var timeExtract = time.match(/\d\d:\d\d/);
但它给了我用 ISO 写的确切日期和时间。
我想要的是提取本地日期和时间中的日期和时间。我不知道该怎么做。
只需创建一个日期对象并使用 toLocaleString or toLocaleDateString 或 toLocaleTimeString
const date = new Date("2021-10-28T17:30:00.000Z")
console.log(date.toLocaleString())
console.log(date.toLocaleDateString().replaceAll("/","-"))
console.log(date.toLocaleTimeString())
您获取日期的方法有误。 当您阅读日期时,应将其转换为您的语言环境,以便您从 UTC 日期
中获得准确的日期您可以使用 JS Date() 函数或 moment 库
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/
使用 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
中找到答案