我有一个函数内部的字母和数字对象。这个函数接受一个数组数组,并且我正在运行一个for循环,它遍历该对象并检查一个条件。如果数组中的任何数字与对象中的任何值匹配,则返回只需键即可。是否可以检查一个对象的值的条件,并返回键?
所以如果我通过switcher(['26'])
,它应该返回'a'。这可能吗?
function switcher(x){
const letters = {
a: '26',
b: '25',
c: '24',
d: '23',
e: '22',
f: '21',
g: '20',
h: '19',
i: '18',
j: '17',
k: '16',
l: '15',
m: '14',
n: '13',
o: '12',
p: '11',
q: '10',
r: '9',
s: '8',
t: '7',
u: '6',
v: '5',
w: '4',
x: '3',
y: '2',
z: '1'
};
}
我试图通过ES6 map()
方法来做到这一点,但我不能确定为要放什么东西在我的if语句..这是我到目前为止有:
return x.map(function(number){
let keys = Object.keys(letters);
for(var key in letters){
if(letters[key] === number){
}
}
});
}
是有更简单的方法来做到这一点?
为什么不只是有阵倒过来,用数字作为键和字母的价值?然后,在你的例子中,你可以简单地请求'字母[26]',它会返回“a”,而不需要进一步搞乱。 – ADyson