我有以下代码:
const locales = {
RU: 'something here',
EN: 'something else here',
};
let locale;
for (const [key, value] of Object.entries(locales)) {
if (key.indexOf('RU') !== -1) {
locale = value;
break;
}
}
然而我正在使用eslint。它抱怨no-restricted-syntax
,所以我想知道如何在没有for循环的情况下实现相同的结果(迭代中断)。
欢迎使用ES7。
答案 0 :(得分:2)
您可以这样做:
const locales = {
RUSSIAN: 'something here',
ENGLISH: 'something else here',
};
let locale = locales[Object.keys(locales).find(k => k.indexOf("RU") != -1)];
console.log(locale);

答案 1 :(得分:1)
使用功能并致电return
答案 2 :(得分:1)
您可以使用给定的密钥直接访问。
locale = locales.RU;
或者
var key = 'RU',
locale = locales[key];
答案 3 :(得分:0)
Use JavaScript's find Function. Something like this:
Object.entries(locales).find((value, key) -> key.indexOf("RU") !== -1);