https://programmers.co.kr/learn/courses/30/lessons/12926?language=javascript
function solution(s, n) {
var answer = '';
// 시저암호 = 알파벳을 일정한 거리만큼 밀어서 다른 알파벳으로 변경
// input 변경문자열, 밀어야 되는 길이
// output = 변경된 문자열
// a B z => e F d
// 문자하나를 이동을 시켜서 변경
let alpha = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z'];
// input 으로 들어오면 문자를 인식 -> alpha 배열에서 index 확인 -> n 만큼 이동 및 변경
// a B z -> 공백은 alpha indexOf -1
let splitedString = s.split('');
let returnArr = [];
// 기본은 소문자로 옴
// 대문자 toLowerCase()
for(let char of splitedString)
{
let lowerChar = char.toLowerCase()
// 원래 소문자인경우
// 원래 대문자인 경우
let index = alpha.indexOf(lowerChar)
if(index!==-1)
{
index = index+n
if(index>=alpha.length)
{
index = index - alpha.length;
}
if(char!==lowerChar)
{
returnArr.push(alpha[index].toUpperCase())
}
else {
returnArr.push(alpha[index])
}
}
else {
returnArr.push(char)
}
}
return returnArr.join('');
}