Computer >> 컴퓨터 >  >> 프로그래밍 >> JavaScript

JavaScript로 문자열 내 공백 개수 세는 방법

이번 글에서는 공백이 포함된 문자열을 입력받아 그 문자열 안에 몇 개의 공백이 있는지 세는 JavaScript 함수를 작성하는 방법을 알아보겠습니다.

예를 들어, 입력 문자열이 다음과 같다면 −

const str = 'this is a string';

출력 결과는 다음과 같아야 합니다 −

const output = 4;

구현 예제

가장 기본적인 접근 방식은 문자열을 한 글자씩 순회하면서 각 문자가 공백(' ')인지 확인하고, 공백일 때마다 카운트를 증가시키는 것입니다.

const str = 'this is a string';

const countSpaces = (str = '') => {
   let count = 0;
   for (let i = 0; i < str.length; i++) {
      const el = str[i];
      if (el !== ' ') {
         continue;
      };
      count++;
   };
   return count;
};

console.log(countSpaces(str));

출력 결과

위 코드를 실행하면 다음과 같은 결과가 출력됩니다 −

4

대체 방법: split() 활용하기

for 루프 대신 split() 메서드를 사용하면 코드를 더 간결하게 작성할 수 있습니다. 공백을 기준으로 문자열을 나누면 배열의 길이에서 1을 뺀 값이 곧 공백의 개수가 됩니다.

const countSpaces = (str = '') => {
   return str.split(' ').length - 1;
};

console.log(countSpaces('this is a string')); // 4

정리

문자열 내 공백 개수를 세는 방법은 크게 두 가지입니다. 첫째, 반복문으로 각 문자를 검사하는 방식이고, 둘째, split() 메서드를 활용하는 방식입니다. 짧은 문자열이라면 어느 방법이든 충분하지만, 가독성 측면에서는 split()을 사용한 한 줄 코드가 더 효율적일 수 있습니다.