【发布时间】:2021-07-01 16:36:49
【问题描述】:
我有一个对象数组
array = [{"key": "English", "value": "en-ca"},
{"key": "French", "value": "fr-ca"}];
我正在使用以下方法检测浏览器语言:
var brwsrlang = window.navigator.language;
我需要将获取的浏览器语言(brwsrlang)与我的数组中的值进行匹配,并返回匹配的字符串“en-ca”。
例如: 如果我的浏览器语言是“en-ca”,它应该返回 true 或 false。 我尝试了以下方法。但是,我想让它与数组值一起使用。
const x = brwsrlang.match( /[a-z]|-/g).join('');
这给了我以下结果。
Output x=:
"en-ca"
但是,我不想将它与所有字母匹配。我只想让它从给定的数组中检查。我想用我的数组值替换正则表达式。
【问题讨论】:
-
为什么对象是
{ key: 'English', value: 'en-ca' }而不是{ "english": "en-ca" }? -
const inArray = array.some(language=> language.value.toLowerCase() === brwsrlang.toLowerCase());
标签: javascript arrays