题解 | #字符串加解密#
字符串加解密
https://www.nowcoder.com/practice/2aa32b378a024755a3f251e75cbf233a
const readline = require('readline');
const rl = readline.createInterface({
input: process.stdin,
output: process.stdout
});
let num = 0
rl.on('line', function (line) {
num++
if(num === 1){
// 对字符串进行加密、let与const与花括号
let strArr = line.split('')
const res = []
let char = ''
for(let i = 0; i < line.length; i++){
// 是字母
if(/[a-zA-Z]/.test(line[i])){
let code = line[i].charCodeAt()
if(code === 90){
code = 65
char = String.fromCharCode(code)
}else if(code === 122){
code = 97
char = String.fromCharCode(code)
}else {
char = String.fromCharCode(code + 1)
}
// 往后转一位,然后变大写
if(code >= 65 && code <= 90){
char = char.toLowerCase()
}else if(code >= 97 && code<= 122){
// 往后转一位,然后变小写
char = char.toLocaleUpperCase()
}
}else if(/[0-9]/.test(line[i])){
// 数字往后加1
if(line[i] === '9'){
char = '0'
}else {
char = line[i]*1 + 1 + ''
}
}
res.push(char)
}
console.log(res.join(''))
}else if(num === 2){
// 对字符串进行解密、let与const与花括号
let strArr = line.split('')
const res = []
let char = ''
for(let i = 0; i < line.length; i++){
// 是字母
if(/[a-zA-Z]/.test(line[i])){
let code = line[i].charCodeAt()
if(code === 65){
code = 90
char = String.fromCharCode(code)
}else if(code === 97){
code = 122
char = String.fromCharCode(code)
}else {
char = String.fromCharCode(code - 1)
}
// 往后转一位,然后变小写
if(code >= 65 && code <= 90){
char = char.toLowerCase()
}else if(code >= 97 && code<= 122){
// 往后转一位,然后变小写
char = char.toLocaleUpperCase()
}
}else if(/[0-9]/.test(line[i])){
// 数字往后加1
if(line[i] === '0'){
char = '9'
}else {
char = line[i]*1 - 1 + ''
}
}
res.push(char)
}
console.log(res.join(''))
}
});

美的集团公司福利 783人发布