Я хотел бы создать функцию, которая чередует заглавные буквы.Например, Hello World
станет HeLlO wOrLd
.Первая буква строки всегда должна начинаться с заглавной буквы.
Вот код, который я написал:
function alternatingCaps(str) {
let alternate = str.charAt(0).toUpperCase();
for(let i = 1; i < str.length; i++) {
let previousChar = str.charAt(i - 1);
if(previousChar === previousChar.toUpperCase())
alternate += str.charAt(i).toLowerCase();
else if(previousChar === previousChar.toLowerCase())
alternate += str.charAt(i).toUpperCase();
}
return alternate;
}
Я объявил переменную alternate
с прописным первым символом предоставленной строки.,Затем я перебираю остаток строки и проверяю, является ли символ, предшествующий текущей итерации, прописным или строчным;Как бы то ни было, текущее письмо станет противоположным.
Однако, это не приведет к желаемому результату.Вот пара тестов и соответствующие результаты:
console.log(alternatingCaps('hello world'));
// Output: "HELLO wORLD"
console.log(alternatingCaps('jAvaScrIPT ruLEZ'));
// Output: "JAvAScRIpt rULez"
Как мне исправить мою функцию?