Edge 15中的"Intl not available"

rog*_*rkk 10 javascript internationalization ecmascript-intl microsoft-edge

Intl not available当我的脚本在Edge 15中运行以下代码时,我在JS控制台中看到错误:

new Date().toLocaleDateString()

我有点难过这个.它在Edge 14中工作得很好,我找不到任何对国际化API的引用突然从Edge 15中消失.

我不确定这是否是测试它的正确方法,但window.hasOwnProperty("Intl")在控制台中运行实际上会返回true.对我而言,这似乎表明Intl实际上在那里.

拥有更多JS技能的人能够分辨出这里真正发生的事情吗?

小智 3

确保您的 JS 代码没有重新定义标准Map类。

我们遇到了几乎相同的问题,但是用的是Intl.Collator对象。String.prototype.localeCompare("...", "locale")我们因此无法使用。

您可以在 Edge 15 和其他浏览器中查看此 codepen 以获取解释: https: //codepen.io/kgorob/pen/pweaWV

PS 我不确定你的问题是因为Map类的具体原因,也许是你正在重新定义的其他标准 JS 类。