Чтобы повернуть текст с помощью шифра ROT13 в JavaScript, вы можете использовать следующие методы:
Метод 1: использование цикла
function rotate13(text) {
var result = "";
for (var i = 0; i < text.length; i++) {
var c = text.charCodeAt(i);
if (c >= 65 && c <= 90) {
result += String.fromCharCode((c - 65 + 13) % 26 + 65);
} else if (c >= 97 && c <= 122) {
result += String.fromCharCode((c - 97 + 13) % 26 + 97);
} else {
result += text.charAt(i);
}
}
return result;
}
var rotatedText = rotate13("Hello, World!");
console.log(rotatedText); // Output: "Uryyb, Jbeyq!"
Метод 2: использование регулярных выражений
function rotate13(text) {
return text.replace(/[a-zA-Z]/g, function (c) {
var base = c <= "Z" ? 65 : 97;
return String.fromCharCode((c.charCodeAt(0) - base + 13) % 26 + base);
});
}
var rotatedText = rotate13("Hello, World!");
console.log(rotatedText); // Output: "Uryyb, Jbeyq!"
Метод 3. Использование сопоставления массивов
function rotate13(text) {
return text
.split("")
.map(function (c) {
var base = c <= "Z" ? 65 : 97;
return String.fromCharCode((c.charCodeAt(0) - base + 13) % 26 + base);
})
.join("");
}
var rotatedText = rotate13("Hello, World!");
console.log(rotatedText); // Output: "Uryyb, Jbeyq!"