获取语言区域设置id

get language locale id

本文关键字:id 设置 区域 语言 获取      更新时间:2023-09-26

如何获得用户语言区域设置id?
我可以通过使用navigator.browserLanguage检索语言区域名称,但如何检索ID呢?

例如,如果用户navigator.browserLanguage是en-US,我想得到1033

这里的答案建议如下:

你可以把信息从马的嘴里,即http://msdn.microsoft.com/en-us/goglobal/bb964664.aspx,并复制粘贴(通过Excel)到一个.properties文件,像这样:

1078 = Afrikaans - South Africa
1052 = Albanian - Albania
1118 = Amharic - Ethiopia
1025 = Arabic - Saudi Arabia
5121 = Arabic - Algeria 
...

(如果你有类似的需求,你可以在这里下载文件)

你可以用键创建一个对象,并在需要时快速访问它们。

免责声明:这真的是一个极简的,"虚拟"的方式在JavaScript中做自己,显然保持(和维护)一个副本的LCID映射信息在你自己的代码库不是很优雅。(另一方面,您也不希望仅仅为了这个简单的映射而包含一个巨大的库jar或做任何过于复杂的事情。)所以,除了这个答案,如果你知道任何类似的东西,请随意发布更多优雅的解决方案或现有的库。

Off-topic: navigator.browserLanguage仅为IE。您最好在浏览器中使用navigator.userLanguage || navigator.language