gpt4 book ai didi

javascript - 如何使用 String.charCodeAt();一次获取并存储字符串每个字母的字符代码值并存储它们?

转载 作者:行者123 更新时间:2023-11-28 18:49:31 25 4
gpt4 key购买 nike

这是我的代码,用于获取字符串第一个字母的字符代码值,然后将该字符代码值转换为负13(我需要在我的问题中执行此操作)。然后我转换该字符代码以获取字符。到目前为止,我可以对给定输入字符串中的第一个或任何字符执行此操作。但我想要做的是一次获取字符串中每个字母的字符代码然后将每个字符代码减13,然后将每个字符代码转换回字母并输出整个转换后的字符串。而且我的输入不是固定的,有很多测试用例不断变化。请帮助我解决它,保留这些点记住。这是我的代码:

function rot13(str) { // LBH QVQ VG! It is just a useless comment.

var a=str.charCodeAt(0);//I am able to get char code of 0 or any other index but just one at a tim,how to do it for all the index values?
a-=13;//I need to decrement eaach char code by 13

var b=String.fromCharCode(a);//and from each char code I need to give back aletter but I want to return a whole converted string back as ouput not just a single converted letter.How to do it?
return b;
}
// Change the inputs below to test
rot13("SERR PBQR PNZC");

最佳答案

您需要循环遍历字符串的所有字符,然后继续将更改后的值附加到字符串b,如下所示:

function rot13(s)
{
return (s ? s : this).split('').map(function(_)
{
if (!_.match(/[A-Za-z]/)) return _;
c = Math.floor(_.charCodeAt(0) / 97);
k = (_.toLowerCase().charCodeAt(0) - 83) % 26 || 26;
return String.fromCharCode(k + ((c == 0) ? 64 : 96));
}).join('');
}

alert(rot13("SERR PBQR PNZC"));

关于javascript - 如何使用 String.charCodeAt();一次获取并存储字符串每个字母的字符代码值并存储它们?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34703666/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com