문제
영어 알파벳 문자열을 받는 JavaScript 함수를 작성해야 합니다. 우리의 함수는 모든 알파벳을 10자리 앞으로 밀어야 합니다. 그리고 'z'를 지나면 ''에서 다시 시작해야 합니다.
예시
다음은 코드입니다 -
const str = 'sample string';
const moveStrBy = (num = 10) => {
return str => {
const calcStr = (ch, code) => String
.fromCharCode(code + (ch.charCodeAt(0) - code + num) % 26);
const ACode = 'A'.charCodeAt(0);
const aCode = 'a'.charCodeAt(0);
return str.replace(/[a-z]/gi, ch => (
ch.toLowerCase() == ch
? calcStr(ch, aCode)
: calcStr(ch, ACode)
));
};
};
const moveByTen = moveStrBy();
console.log(moveByTen(str)); 출력
ckwzvo cdbsxq