문제

  • 문자열의 모든 단어를 반전한다.

풀이 01

function reverseWords(str) {
  let arr = str.split(' ');
  let result = [];

  for (let i = arr.length - 1; i >= 0; i--) {
    result.push(arr[i]);
  }
  return result.join(' ');
}

reverseWords('a b c');          // c b a
reverseWords('1 22 333 4444');  // 4444 333 22 1
  • split(): 문자열을 부분 문자열로 분할하고, 새 배열로 반환한다.
  • push(): 배열의 끝에 새 element를 추가하고, 새로운 길이를 반환한다.
  • join(): 배열의 모든 element를 결합하고, 새 문자열로 반환한다.

풀이 02

function reverseWords(str) {
  return str.split(' ').reverse().join(' ');
}

reverseWords('a b c');          // c b a
reverseWords('1 22 333 4444');  // 4444 333 22 1
  • reverse(): 배열 내 element의 순서를 반전한다.