📅  最后修改于: 2023-12-03 14:42:28.241000             🧑  作者: Mango
Intl.ListFormat.supportedLocalesOf()
方法是 JavaScript 国际化 API 中的一部分,用于返回当前环境支持的符合条件的语言标签数组。
Intl.ListFormat.supportedLocalesOf(locales[, options])
其中,locales
是一个字符串数组,包含你想寻找的语言标签(如 'en-US'),options
是一个对象,包含以下可选参数:
localeMatcher
: 表示语言标签选择算法的参数,可选值为 "lookup" 和 "best fit"。onLocaleNegotiationFailure
: 表示当找不到匹配的语言标签时,如何处理的回调函数。该方法返回一个数组,数组中包含当前环境支持的语言标签,语言标签的格式为 BCP 47。
// 查找支持英语或中文的语言标签
const locales = ['en', 'zh'];
const supportedLocales = Intl.ListFormat.supportedLocalesOf(locales);
console.log(supportedLocales);
// 如果当前环境支持以上两种语言,返回 ["en-US", "zh-CN"] 或类似的语言标签数组
// 查找支持韩语或日语的语言标签
const locales2 = ['ko', 'ja'];
const supportedLocales2 = Intl.ListFormat.supportedLocalesOf(locales2, { localeMatcher: "lookup" });
console.log(supportedLocales2);
// 如果当前环境只支持 한국어 (ko) 或 日本語 (ja),返回 ["ko", "ja"] 或类似的语言标签数组
注意,以上示例返回的语言标签数组具有平台相关性,因此无法完全预测其内容。如果在类似 Node.js 等不支持 Intl API 的环境中运行以上代码,将会得到 Type Error 的异常信息。