How to reverse the middle words of a string in JavaScript

1 Answer

0 votes
function reverseMiddleWords(str) {
  const words = str.trim().split(/\s+/);

  if (words.length < 3) {
    return str; // nothing to reverse
  }

  for (let i = 1; i < words.length - 1; i++) {
    words[i] = [...words[i]].reverse().join('');
  }

  return words.join(' ');
}

console.log(reverseMiddleWords("Hello how are you today"));



/*
run:

Hello woh era uoy today

*/

 



answered Dec 13, 2019 by avibootz
edited Dec 25, 2025 by avibootz
...