我正在测试我对另一个SO question的答案并遇到了这种奇怪的行为,我一生都不知道发生了什么。
代码:
function translateLetter(input) {
const untranslated = "abcdefghijklmnopqrstuvwxyz";
const translated = "zyxwvutsrqponmlkjihgfedcba";
var i = untranslated.indexOf(input);
console.log(i);
return translated.substring(i,1);
}
console.log(translateLetter("a"));
console.log(translateLetter("b"));
console.log(translateLetter("c"));
预期输出:
0
z
1
y
2
x
实际输出:
0
z
1
<--- WTH?
2
y <--- WTF?
最佳答案
如果速度很重要,我会使用一个对象来进行查找。 例如。
var translateLetter= {a:'z',b:'y'... etc }
然后你可以简单地做 ->
console.log(translateLetter['a'])
关于javascript - 为什么这个 Javascript 无法找到正确的索引?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39801163/