Вы также можете использовать «Array.map», как показано ниже
Объяснение - Нам нужно выяснить каждый третий элемент, что означает, что если у нас есть какое-то число, представляющее, в какой позиции я нахожусь при обходе массива, то мы можем проверитьостаток на 3 этой позиции, и если он равен 0, это означает его третий, шестой, девятый ... элемент
Теперь, чтобы найти остаток, у нас есть оператор %
и это некоторое число, которое поможет нам выяснить, какой элементПозиция, в которой мы находимся, - это index
, второй аргумент в функции map
, но нам нужно было бы добавить 1 к index
, поскольку в Javascript индекс начинается с 0, а не 1
Итак, логика для поиска каждого третьегоэлемент становится (i + 1) % 3 == 0
function reverseStringWords (sentence) {
return sentence.split(' ').map((d, i) =>
(i+1) % 3 == 0
? [...d].reverse().join('')
: d)
}
console.log(reverseStringWords("london glasgow manchester edinburgh oxford liverpool"))