在JavaScript中从对象数组中的元素拆分字符

在JavaScript中从对象数组中的元素拆分字符,javascript,Javascript,我有一个对象数组,我想匹配locales数组中的对象键,并与对象中的value属性匹配 输出:如果来自区域设置的对象键与value属性匹配,那么我想在来自区域设置的对象值中显示文本 我在数组中拥有的是: [{ value: 'dz' locales: [ {ar-dz: "Hello World"}, {ar-dk: "Hello World"} ] }] 我陷入了一种超越这一点的逻辑 for(var i = 0; i < d

我有一个对象数组,我想匹配locales数组中的对象键,并与对象中的value属性匹配

输出:如果来自区域设置的对象键与value属性匹配,那么我想在来自区域设置的对象值中显示文本

我在数组中拥有的是:

[{
 value: 'dz'
 locales: [
    {ar-dz: "Hello World"},
    {ar-dk: "Hello World"}
 ]
}]
我陷入了一种超越这一点的逻辑

for(var i = 0; i < data.locales.length; i++) {
    var localearray = Object.keys(data.locales[i]));
    var locales = localearray[i].split('-');
    console.log(locales);
}
for(var i=0;i
使用
。在对象上查找
,以识别第一个对象,该对象在
-
之后的(唯一)键后缀与您要查找的值匹配:

const obj={
值:“dz”,
地区:[
{'ar-dz':“你好,世界”},
{'ar-dk':“你好,世界”}
]
};
const locale=obj.locales.find(
locale=>obj.value==Object.keys(locale)[0]。拆分('-')[1]
);

if(locale)console.log(Object.values(locale)[0])输入结构的语法无效。期望输出是什么?期望输出是。如果它与value属性匹配,则从区域设置输出值array@CertainPerformance我已经用所需的输出更新了问题。非常感谢您快速给出答案!你救了我一天:)