Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/417.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 字符串中要增加的第一个字母,要减少的最后一个字母_Javascript_String - Fatal编程技术网

Javascript 字符串中要增加的第一个字母,要减少的最后一个字母

Javascript 字符串中要增加的第一个字母,要减少的最后一个字母,javascript,string,Javascript,String,我试图创建一个简单的编码器,每个单词的第一个字母成为它的后继字母(a=B),最后一个字母成为它的前导字母(B=a) 像这样: KEY:第一个字母向上,最后一个字母向后。 如果是字符串中的第一个字母,则应将x转换为y,如下所示: Aa=Bb Bb=Cc Cc=Dd Dd=Ee 等等 如果是字符串中的最后一个字母,则应将x转换为y,如下所示: Aa=Zz Bb=Aa Cc=Bb Dd=Cc 等等 狐狸从狗身上跳了过去Uhd gow kumpec pveq Uhd eoh。

我试图创建一个简单的编码器,每个单词的第一个字母成为它的后继字母(a=B),最后一个字母成为它的前导字母(B=a)

像这样:

KEY:第一个字母向上,最后一个字母向后。

如果是字符串中的第一个字母,则应将x转换为y,如下所示:

Aa=Bb

Bb=Cc

Cc=Dd

Dd=Ee

等等

如果是字符串中的最后一个字母,则应将x转换为y,如下所示:

Aa=Zz

Bb=Aa

Cc=Bb

Dd=Cc

等等

狐狸从狗身上跳了过去Uhd gow kumpec pveq Uhd eoh。
这适用于一个单词,但也适用于一个短语

function transform(phrase)
{ var i,last,letters,words=phrase.split(/\s+/);
  for(i=0;i<words.length;i++)
  { letters=words[i].split('');
    last=letters.length-1;
    letters[0]=letters[0].charCodeAt(0)<122?String.fromCharCode(letters[0].charCodeAt(0)+1):'a';
    letters[last]=97<letters[last].charCodeAt(0)?String.fromCharCode(letters[last].charCodeAt(0)-1):'z';
    words[i]=letters.join('');
  }
  return words.join(' ');
}

console.log(transform('apple zebra variables'));
//outputs 'bppld aebrz wariabler'
函数变换(短语)
{var i,last,字母,words=phrase.split(/\s+/);

为了(i=0;i)让它更明显,我只是创建了一些函数,然后调用它们

与此相关的问题是,像“a”这样的单字母单词会被双重弄乱,因此“a”变成“z”,然后回到“a”作为第一个和最后一个字母

//我用它来从数组中删除空的“”,可能有更好的方法来修改原型,但这可能是一种意见。
Array.prototype.clean=函数(deleteValue){
for(var i=0;imystring.length-1)返回mystring;
返回mystring.substr(0,索引)+chr+mystring.substr(索引+1);
}
var mySentence=“棕色的大奶牛碾过了斑马。我明白了”;
//这个句子中的单词要弄乱
var splitS=splitString(mycentence).clean(“”);
对于(变量i=0;iconsole.log(拆分);
如果第一个字母是
z
,怎么办?它不能增加。您使用中给出的代码有什么问题吗?我不理解这个问题,似乎您已经在问题中找到了答案。@user202729我还不是javaScript的高手,我也不完全理解该代码。但是,我确实尝试用d它用一个JavaScript警报下拉列表提示我,并告诉我输入一个字符串。找不到输出。我不知道为了编辑它,代码实际上在说什么。如果你知道,你的帮助将不胜感激。然后去学习JavaScript。互联网上有很多JavaScript教程……记住,询问其他人er为您编写代码的人并不能帮助您提高编程技能。非常感谢。这真的很方便,因为它可以直接在我的控制台上看到。祝贺您获得200次重复!如果您加入不同的堆栈社区,您将在这里获得+100,在那里获得+100。(每人仅获得1次奖金)。因此,您的rep将立即上升到308。请注意,这不是最紧凑的解决方案,但应该很容易理解。对最终数组执行您想要的操作,我没有尝试保留非alpha,但可以使用原始语句作为模式将其放回原位。如果其他字符可能需要在上拆分字符。