我有一個函數內部的字母和數字對象。這個函數接受一個數組數組,並且我正在運行一個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