Javascript toLocaleString 未使用正确的格式

标签 javascript

在我看来,javascript 的数字 toLocaleString() 和 .NET ToString() 数字格式不同。 toLocaleString() 似乎忽略了我在“工具/Internet 选项/语言”中设置的语言。

例如,为了测试西类牙语支持,我确保工具/Internet 选项/语言中仅列出西类牙语 (es-ES),但是

alert((12.05).toLocaleString()); 仍然显示“12.05”(而不是 12,05)

header 中的 Accepted-Language 显示 es-ES,但 javascript 中的 navigator.userLanguage 仍然显示“en-US”(就好像它是从操作系统中选取的一样)

我在这里缺少什么?

最佳答案

你没有错过任何东西。 toLocaleStringoperating system 获取当前语言环境.

编辑以回复评论

该浏览器设置告诉服务器您喜欢哪种语言。然而,它对 javascript 没有影响。如果你仔细想想,这是完全有道理的。向服务器请求特定语言的内容并不能保证服务器实际上会返回该语言的内容。

但在我看来,您并没有真正的问题,您只是对如何正确测试感到困惑。难道您不能仅更改操作系统语言设置以确保日期格式适合西类牙语使用者吗?

关于Javascript toLocaleString 未使用正确的格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9381820/

相关文章:

javascript - JavaScript 中的 Django FOR 循环

javascript - 如何使用正则表达式将多个序列替换为列表中的值?

javascript - 矫枉过正?使用indexOf()来发现字符串的内容

javascript - AngularJS 组件在 UiRouter 路由更改时监视并显示通知

javascript - ES6 block 是否只能防止功能提升?

javascript - 使用 jQuery 动态地垂直和水平居中 div

iFrame 刷新时,iFrame 内的 Javascript 文件不会被执行

javascript - 在不加载完整文件的情况下跳到 HTML5 音频元素中的特定时间

javascript - Outlook.com 应用程序 - 如何创建预填充 HTML 正文的事件

javascript - 使用 Javascript 正则表达式从 HTML 中提取文本