Vấn đề
Chúng tôi được yêu cầu viết một hàm JavaScript sử dụng một chuỗi các bảng chữ cái tiếng Anh. Nếu họ vượt qua 'z', hãy bắt đầu lại ở 'a'. Và mỗi nguyên âm nên được đẩy lên 5 vị trí.
Ví dụ
Sau đây là mã -
const str = 'sample string';
const moveWords = (str = '') => {
str = str.toLowerCase();
const legend = 'abcdefghijklmnopqrstuvwxyz';
const isVowel = char => 'aeiou'.includes(char);
const isAlpha = char => legend.includes(char);
let res = '';
for(let i = 0; i < str.length; i++){
const el = str[i];
if(!isAlpha(el)){
res += el;
continue;
};
let pos;
const ind = legend.indexOf(el);
if(isVowel(el)){
pos = (21 + ind) % 26;
}else{
pos = (ind + 9) % 26;
};
res += legend[pos];
};
return res;
};
console.log(moveWords(str)); Đầu ra
bvvyuz bcadwp