javascript - Javascript Date.ToLocaleTimeString() 与计算机的时间格式不匹配
问题描述
我的电脑被定义为使用 24 小时格式:
但是,当我使用var date = new Date("10/25/2020 19:32")
然后date.toLocaleTimeString()
解决方案
当没有提供选项时,toLocaleString的输出完全依赖于实现,因此可能会或可能不会使用主机设置,但是他们几乎可以肯定地将其视为等同于没有选项的“默认”语言,即
new Date().toLocaleString('default') === new Date().toLocaleString()
在我测试的每个浏览器中都返回 true。重要的部分是:
[toLocaleString 旨在以一种方便的、人类可读的形式表示当前时区中的日期,该形式与宿主环境当前语言环境的约定相对应。
请注意,它应该使用区域设置(即地点或地区)的约定,而不是主机系统。
当提供语言和/或选项时,输出由 ECMA-402 管理,主要基于作为第一个参数提供的语言代码(误命名为“语言环境”)。选项也会影响输出,但是除了获取在第一个参数为“默认”的情况下要使用的语言代码之外,不使用主机设置。
toLocale方法的基本原理是可以从语言和其他相当模糊的选项中确定适当的格式。然后实现开发人员计算出每种语言和选项组合使用的格式。显然,当提供语言或选项时,不能使用主机系统设置,因为这违背了该功能的全部目的。
推荐阅读
- sql - 在 DB2 中忽略空格的有效方法?
- javascript - 如果我不知道 ID,我如何获取“数量”和“价格”值并访问项目 [数组]
- javascript - Javascript Parsing JSON from PHP echo throw error, AJAX Parsing 正常工作
- reactjs - 如何清除Reactstrap 中的选定值?
- reactjs - 如何解决 React 和 React-router 中未定义的匹配道具
- python - 如何在我的 lambda 中访问通过 cloudformation 创建的存储桶?
- elasticsearch - elasticsearch 7.9 抛出一个新错误“illegal_argument_exception”,因为文本太大
- javascript - 在下拉列表中使用 jquery
- azure-functions - 无法查看应用服务函数的调用日志
- javascript - 如何动态更改段落中定义的字体大拇指的颜色