Javascript设置一个等于前一个字母的字母

时间:2015-08-05 08:04:44

标签: javascript switch-statement

我想制作一个程序,我们可以说每个字母都等于它之前的字母,除了 - 字母 a ,它将被设置为0.但是,就像我一样我是初学者,我不太清楚从哪里开始。我相信诸如Javascript switch语句之类的东西应该完成任务:

ar a,...,z;
switch (~~~~~~~) {
case 0:
    "a" = "0";
    break;
case 1:
    "b" = "a";
    break;
case 2:
    "c" = "b";
    break;
case n:
    "letter" = "letter before it";
    break;
    ...}

我的问题是如何将上面的伪代码转换为实际代码的?

3 个答案:

答案 0 :(得分:2)

您不需要为每个角色使用大小写。只需将字符的ASCII值与ASCII值-1(前一个字符)进行比较

str="a";
if(str.charCodeAt(0)==(str.charCodeAt(0)-1))
alert('true');

您可以过滤要忽略的ASCII值97(a)以进行比较

答案 1 :(得分:0)

您可以通过获取ASCII码并减少1来动态检索上一个字母:

function previousLetter(letter){
    if(letter == 'a') return 0;
    else return String.fromCharCode(letter.charCodeAt(0)-1)
}

> previousLetter('b')
'a'
> previousLetter('a')
0

答案 2 :(得分:0)

你必须推迟“符号:

var a,...,z;
switch (~~~~~~~) {
case 0:
    a = "0";
    break;
case 1:
    b = a;
    break;
case 2:
    c = b;
    break;
case n:
    letter = "letter before it";
    break;
    ...}

此代码,在情况1(例如)中将变量b设置为等于变量a,但实际上在此代码中所有变量都未初始化,因此总是为null,您必须首先将其初始化为:

a = "a";

或直接放入正确的案例:ç

case 1:
    b = "a";
    break;