Javascript:找出以前的字母表中的字母

Flo*_*ler 9 javascript

如果我在JavaScript中收到一封信,我想按字母顺序查找上一个字母,所以如果输入为"C",则输出必须为"B".有没有标准的解决方案,还是我必须创建一些特殊的功能?

Ben*_*Lee 14

var ch = 'b';
String.fromCharCode(ch.charCodeAt(0) - 1); // 'a'
Run Code Online (Sandbox Code Playgroud)

如果你想绕着字母表循环,只需要专门检查'a' - 如果是'则循环到'z',否则使用上面的方法.


Tat*_*nen 5

这应该在某些情况下有效,您可能需要稍微调整一下:

function prevLetter(letter) {
    return String.fromCharCode(letter.charCodeAt(0) - 1);
}
Run Code Online (Sandbox Code Playgroud)

如果letterA,结果是@,所以如果你想让它变得万无一失,你需要添加一些健全性检查.否则应该做好工作.


Dav*_*lor 5

Tatu评论的全部功能将是

function prevLetter(letter) {
    if (letter === 'a'){ return 'z'; }
    if (letter === 'A'){ return 'Z'; }
    return String.fromCharCode(letter.charCodeAt(0) - 1);
}
Run Code Online (Sandbox Code Playgroud)