javascript - javascript中日期格式错误的格式
问题描述
我想格式化一个格式错误的日期。
例如:
2019 年 3 月 8 日下午 5:13 GMT+0100
如果它具有以下格式,它将起作用:
2019 年 3 月 8 日 17:13:00 GMT+0100
有什么方法可以快速格式化日期,这样就可以被默认的javascript Date 函数解析了?
我试图通过 pm/am 找到 substr。但我不知道如何获取其余部分(下午 5:13)以及如何“自动”格式化它。我想过添加 12,但我不确定如何获取子字符串。
提前致谢。
编辑:
至于现在我正在使用 momentJs,但这也不起作用。
function returnFormatedDate(dt)
{
return moment(dt).format('DD.MM.YY HH:mm');
};
返回“无效日期”
Edit2:示例代码,但我更喜欢 Chris G. 的代码:
var str = "Mar 8, 2019 5:13pm GMT+0100";
var parts = str.split(" ");
console.log(parts);
if(3 in parts)
{
badPart = parts[3];
if(badPart.includes("pm"))
{
var newBadPart = badPart.replace('pm', '');
var moddedDate = newBadPart.split(":");
moddedDate[0] = 12 + Number(moddedDate[0]);
badPart = moddedDate.join(":");
}
else if(badPart.includes("am"))
{
badPart.replace("am", "");
}
var newParts = [parts[0], parts[1], parts[2], badPart, parts[4]];
var dte = new Date(newParts.join(" "));
console.log(dte);
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
解决方案
这是我的解决方案:
var str = "Mar 8, 2019 5:13pm GMT+0100";
var parts = str.split(" ");
console.log(parts);
if(3 in parts)
{
badPart = parts[3];
if(badPart.includes("pm"))
{
var newBadPart = badPart.replace('pm', '');
var moddedDate = newBadPart.split(":");
moddedDate[0] = 12 + Number(moddedDate[0]);
badPart = moddedDate.join(":");
}
else if(badPart.includes("am"))
{
badPart.replace("am", "");
}
var newParts = [parts[0], parts[1], parts[2], badPart, parts[4]];
var dte = new Date(newParts.join(" "));
console.log(dte);
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
这是 Chris G,我更喜欢它: https ://jsfiddle.net/khrismuc/2esxhyqb
推荐阅读
- ios - Graphql - iOS 中的数据获取
- python - 如何在 2 个字符串中获取一个字符串?
- ios - 类型“UIButton”没有成员“发件人”
- clang-tidy - 将子选项设置为 clang-tidy
- php - 每个数组元素的计数字符串
- python - 没有使用 django 2.1.3 访问的上下文处理器内容
- angular - angular 6 应用程序的活动 Https
- node.js - 我如何在使用 sequelize 的包含模型中使用限制
- java - 在 Websocket 通过 Nginx 转发用户 IP
- android - 使用 Material Components 和 androidX 编译 Android 应用程序时出错