Привет всем,
Суть задачи: написать функцию которая принимает в параметры строку, и возвращает её, где всё элементы с четными индексами переведены в верхний регистр.
Например:
toWeirdCase( "Weird string case" );//=> returns "WeIrD StRiNg CaSe"
function toWeirdCase(s){
var str = s.toLowerCase().split(' '); // Переводим строку в нижний регистр, и разбиваем на массив.
for(var i = 0; i < str.length; i++){ // проходимся циклом по этим массивам
var s = str[i].split('').forEach(function (item, j/*индекс текущего элемента*/) { // разбиваем уже сложенные элементы на массивы, и попутно делаем проверку на четность индекса
if (j % 2 === 0){
item.toUpperCase(); // переводим элемент с четным индексом в верхний регистр
//console.log(item.toUpperCase()); // так выводит всё четные элемент в верхнем регистре.
}
});
console.log(s);
}
}
console.log(toWeirdCase("Weird string case"));
Вот не могу понять как теперь, собрать обратно всё в одну сроку.
Кто может ткните носом меня, в сторону правильного решения :)
Ответ
Вот решение вопроса без прохождения по двум циклам.
В функции split если задать параметр пустую строку то он разрезает строку по символам, вот проходим по нему каждый четный символ переводим в верхний регистр, но не считаем прабелы.
Комментариев нет:
Отправить комментарий