gpt4 book ai didi

Javascript:从字符串中提取日期?

转载 作者:行者123 更新时间:2023-11-29 18:31:46 25 4
gpt4 key购买 nike

我有一个格式化为任一格式的字符串

Today 3:28AM
Yesterday 3:28AM
08/22/2011 3:28AM

我需要做的是以某种方式将我的字符串的日期部分提取到一个变量中,即。 “今天”、“昨天”或格式为 DD/MM/YYYY 的日期。

使用 Javascript 完全可以实现这样的事情吗?

最佳答案

由于 JavaScript 日期解析器无法识别您的日期,因此您可以编写一个解析器,将日期放入它可以识别的格式。这是一个函数,它采用您提供的日期示例并将它们格式化以获得有效的日期字符串:

function strToDate(dateStr) {
var dayTimeSplit = dateStr.split(" ");
var day = dayTimeSplit[0];
var time = dayTimeSplit[1];

if (day == "Today") {
day = new Date();
} else if (day == "Yesterday") {
day = new Date();
day.setDate(day.getDate() - 1);
} else {
day = new Date(day);
}

var hourMinutes = time.substring(0, time.length -2);
var amPM = time.substring(time.length -2, time.length);

return new Date((day.getMonth() + 1) + "/" + day.getDate() + "/" + day.getFullYear()
+ " " + hourMinutes + " " + amPM);
}

然后您可以调用 stroToDate 将您的日期格式转换为有效的 JavaScript 日期:

console.log(strToDate("Today 3:28AM")); 
console.log(strToDate("Yesterday 3:28AM"));
console.log(strToDate("08/22/2011 3:28AM"));

输出:

Sun Sep 25 2011 03:28:00 GMT-0700 (Pacific Daylight Time)
Sat Sep 24 2011 03:28:00 GMT-0700 (Pacific Daylight Time)
Mon Aug 22 2011 03:28:00 GMT-0700 (Pacific Daylight Time)

关于Javascript:从字符串中提取日期?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7550416/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com