javascript - 日期解析月份格式
问题描述
在我的 Angular 项目中创建/测试日期适配器时,我遇到了这个问题。我想我一定是遗漏了一些约定,但是当将月份更改为 2(二月)而不是 02 之类的单个数字时,我得到了不同的一天。
Date.parse 基于不同的输出给出两个不同的输出,如下图所示。有什么想法吗?
解决方案
根据文档:
ECMAScript 规范规定:如果字符串不符合标准格式,则函数可能会退回到任何特定于实现的启发式或特定于实现的解析算法。
在这里,第二个字符串与预期的格式不匹配,Chrome对其进行了处理。
如果您使用 Firefox 对其进行测试,则会返回相同的日期,因此这是 Chrome 的“问题”。
您可以尝试阅读 V8 的源代码以了解您为什么会得到这个以及它是如何实际实现的。
这没什么帮助,但我认为如果不深入了解 V8,您将找不到任何东西。
推荐阅读
- javascript - 在不影响 CSS 值的情况下更改元素的类名
- python - 如果国家的可再生能源百分比高于中位数,则创建一个新列,值为 1,否则为 0
- javascript - 在 Kubernetes 上部署时出现 CreateContainerConfigError
- ios - 为什么 NavigationView 必须是顶级视图?
- python - 如何在python包trading-calander中找到处理目标文件的方法
- powershell - Powershell 在特定行之后找到一个字符串
- laravel - 在视图 laravel 中传递具有关系的数据
- asp.net-mvc - FineUploader 状态 406 ASP.NET
- node.js - podman 上的容器化 NodeJS 应用程序无法访问
- python - 可以使用 Mypy 给 fold_left() 一个类型吗?