removeSpace.js (8kyu 08)

Codewars 알고리즘 풀이


Problem

  • Simple, remove the spaces from the string, then return the resultant string.
    • 문자열의 공백을 제거한다.


Solution 01

function removeSpace(str) {
  let result = '';
  
  for (let i = 0; i < str.length; i++) {
    if (str[i] !== ' ') {
      result += str[i];
    }
  }
  return result;
}

removeSpace('Co d ewa rs');    // Codewars
removeSpace('0 1 10 11 100');  // 011011100


Solution 02

function removeSpace(str) {
  let result = [];
  
  for (let i = 0; i < str.length; i++) {
    if (str[i] !== ' ') {
      result.push(str[i]);
    }
  }
  return result.join('');
}

removeSpace('Co d ewa rs');    // Codewars
removeSpace('0 1 10 11 100');  // 011011100

push() 메소드

배열의 끝에 새 element를 추가하고, 새로운 길이를 반환한다.

join() 메소드

배열의 모든 element를 결합하고, 새 문자열로 반환한다.


Solution 03

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

removeSpace('Co d ewa rs');    // Codewars
removeSpace('0 1 10 11 100');  // 011011100

split() 메소드

문자열을 부분 문자열로 분할하고, 새 배열로 반환한다.


Solution 04

function removeSpace(str) {
  return str.replace(/\s/g, '');
}

removeSpace('Co d ewa rs');    // Codewars
removeSpace('0 1 10 11 100');  // 011011100

정규표현식 (RegExp)

replace(): 대응되는 문자열을 찾아 다른 문자열로 치환한다.

\s: 공백 문자

g: 전역 검색