javascript - 在 JavaScript 中解析的棘手日期字符串
问题描述
Fri Nov 10 05:45:36 +0000 2017
我已经尝试过时刻和计时节点。两者都被这种日期格式难住了。
有什么建议可以获取有效的 UTC 日期吗?
谢谢
解决方案
要添加到@CertainPerformance 的答案,如果您尝试使用 MomentJS,您的代码的问题在于它不是标准的 ISO 日期字符串。直接解析而不指定格式将导致错误的结果和如下警告:
Deprecation warning: value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are discouraged and will be removed in an upcoming major release.
为了减轻影响,请始终将格式传递给 MomentJS 构造函数,如下所示:
const inputStr = "Fri Nov 10 05:45:36 +0000 2017"
const mom = moment(inputStr, 'ddd MMM D HH:mm:ss ZZ YYYY');
console.log(mom.toISOString());
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.22.1/moment.min.js"></script>
推荐阅读
- slack - 是否可以通过 Slack API 知道用户拥有的未读 Slack 消息的数量?
- sql - Oracle SQL:遍历年份
- docker - 将 docker 容器内的用户添加到主机系统上的 goup
- unity3d - Unity 2020.1.10f1 包管理器无法打开
- java - 初始化对象后在Android中获取空对象引用错误
- azure-data-explorer - kusto 查询 - 如何按日期分组并按名称分组
- typescript - 用户的 Firebase v8 Typescript 定义导入
- unity3d - 无法保存高分 - Unity
- android - 在 onRespons 方法中调用函数
- azure - Azure 使用 powershell 更新多个 NSG 规则