问题标签 [ecmascript-intl]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
8880 浏览

javascript - 指定的时区无效:Chrome 中的 US/Alaska、US/Arizona、US/Mountain、US/Central 等错误但在 Mozilla 中工作

我正在尝试将时间戳转换为各个时区的本地时间,并发现某些 TimeZone 在 Chrome(v76.0.38)中不支持,但在 Mozilla(v68.0.2)中工作正常。

未捕获的 RangeError:指定的时区无效:美国/亚利桑那州

在 Date.toLocaleString ()

其他几个时区也抛出了同样的错误

US/Alaska US/Mountain US/Central US/East-Indiana

官方支持这些时区,如其网站 Chrome 支持的时区值中所述

0 投票
0 回答
122 浏览

javascript - JavaScript中有没有办法让 (10000).toLocaleString("zh") 可以在中文语言环境中打印出一万或一万?

0 投票
1 回答
248 浏览

javascript - JavaScript 排序:整理器 - 修复 aa (å)

我正在尝试制作一个分类系统。我面临的问题是“aa”排在最后,因为在丹麦语中,“aa”的意思是“å”,这就是为什么它排在最后的原因。如果可能的话,我希望 'aa' 在列表中排在第一位,而不是排在最后。

所以为了简化,这是它给我的输出:

...我想要的顺序是:

这是我正在处理的代码

编辑:通过切换到冰岛语而不是丹麦语,它似乎可以在手机上工作,但不能在电脑上工作。

EDIT2:在计算机上,Google Chrome 和 Microsoft Edge (Chromium) 目前似乎无法运行,但 Microsoft Edge (EdgeHTML)、Mozilla Firefox 和 Safari 正在运行。Internet Explorer 变得很奇怪。

0 投票
2 回答
126 浏览

javascript - 使用此 JavaScript 将本地时间转换为另一个时区

每次时钟为 15:00 及以上时,我需要将莫斯科时间的当前日期增加 1 天。我是在当地时间做的,但是按照莫斯科时间(UTC + 3)我做不到

0 投票
0 回答
51 浏览

javascript - 如何确保/加载客户端上的语言环境?

我刚刚开始使用Intl包,我不太明白我们应该如何在我们的 web 应用程序中使用它。

例如,以下代码段使用Intl.DateTimeFormat和不同的语言环境(en-GB, de-DE)和时区(Europe/ViennaJapan.

这在我的 Chrome 桌面浏览器中按预期工作。
但据我了解文档,这取决于浏览器实现:

从文档中引用

timeZone
要使用的时区。实现必须识别的唯一值是“UTC”;默认值是运行时的默认时区。实现还可以识别 IANA 时区数据库的时区名称,...

那么我们如何确保我们的应用程序在每个浏览器上都能运行呢?

  1. 例如,当我们有一个受支持时区的精选列表时,有没有办法从我们的服务器动态加载这些时区?(或猴子补丁,或 polyfill,或使用 3rd 方库,..)
    注意:我们不想使用 momentjs、date-fns-tz 等。
  2. 我想语言环境也是如此(即浏览器可能只支持某些语言环境)-我在文档中找不到有关此的信息。同样对于语言环境,我们需要一种动态加载我们想要支持的语言环境的方法

笔记:

  • 我们不需要填充 Intl 包(因为我们只针对现代浏览器),我们只是想确保我们想要支持的时区和语言环境可用
  • 实际上我正在寻找类似 NodeJs在运行时提供 ICU 数据的东西- 仅用于浏览器
0 投票
2 回答
171 浏览

javascript - Chrome 是否停止支持 Intl 功能?

我正在使用 chrome 浏览器(版本 92.0.4515.131)。

我发现对 JavaScript Intl 的支持在Chrome浏览器中无法正常运行。

因此,Chrome 给出了“08/02/2021”,而不是 Firefox 中预期的“02.08.2021”。

JavaScript 功能在ECMAMDN中定义,用于浏览器兼容性。

为了在 Chrome 中正常工作,我们需要添加任何修改吗?

0 投票
0 回答
53 浏览

javascript - Intl.Collat​​or() 或 localeCompare() 中的“co”到底是什么?

据我所知,Intl.Collator()localeCompare()locales争论。主要是帮助指定 BCP 47 语言标签,而且这个属性也可以表示参数如co, kn, kf

我在MDN上读过关于co那个...

某些语言环境的变体排序规则。可能的值包括:“big5han”、“dict”、“direct”、“ducet”、“gb2312”、“phonebk”、“phonetic”、“pinyin”、“reformed”、“searchjl”、“stroke”、“trad” ”、“单汉”。这个选项也可以通过选项属性“collat​​ion”来设置。

我不明白具体是做什么co的。它整理了什么?当我们再指定一个语言标签时,也许它涉及整理语言环境?

0 投票
0 回答
38 浏览

javascript - 如何在 JavaScript 中反转 ES6 API Intl.DisplayNames() 区域值

我需要扭转这个条件,这意味着United StatesUS我试图在谷歌上找到,但不能。我该怎么做?