javascript - 为什么这个 Javascript 无法找到正确的索引?

标签 javascript

我正在测试我对另一个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?

Code on JSFiddle

最佳答案

如果速度很重要,我会使用一个对象来进行查找。 例如。

var translateLetter= {a:'z',b:'y'... etc }

然后你可以简单地做 ->

console.log(translateLetter['a'])

关于javascript - 为什么这个 Javascript 无法找到正确的索引?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39801163/

相关文章:

javascript - 如何在 Bootstrap 中使选项卡可点击

javascript - 为动态创建的范围变量赋值

javascript - 如何查看用户的当前位置?

javascript - Flash 应用程序在没有焦点的情况下接收鼠标事件

javascript - 如何在 TailwindCSS 中拥有动态 'primary' 类?

javascript - 高级 JavaScript 数组按计数分组

javascript - 我在用 JavaScript 编写公牛和奶牛游戏时遇到问题

javascript - 如何使用 rxJS 根据当前属性向数组中的所有对象添加属性

JavaScript 按键

javascript - 在 Javascript 中检查数组的所有元素类型时出现问题