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

JavaScript에서 문자열 내 특정 문자의 반복 횟수를 구하는 방법

JavaScript에서 문자열 안에 특정 문자가 몇 번 등장하는지 확인하는 가장 간단한 방법은 문자열을 처음부터 끝까지 순회하면서 해당 문자가 나타날 때마다 개수를 세는 것입니다.

예제

아래 예제에서는 for 반복문을 사용해 문자열의 각 문자를 하나씩 검사하고, 찾고자 하는 문자와 일치하면 카운트를 1씩 증가시킵니다.

let s = "hello world!";
let searchChar = "l";
let count = 0;

for(let i = 0; i < s.length; i++) {
    if(s[i] == searchChar) {
        count++;
    }
}

console.log(count);

실행 결과

3

코드 설명

위 코드의 동작 방식을 단계별로 살펴보면 다음과 같습니다.

  • 문자열 순회: s.length를 이용해 문자열 전체 길이만큼 반복문을 실행합니다.
  • 문자 비교: 인덱스 접근(s[i])으로 각 위치의 문자를 추출하고, 찾으려는 문자(searchChar)와 비교합니다.
  • 카운트 증가: 일치하는 경우 count 변수를 1 증가시킵니다.

결과적으로 "hello world!"라는 문자열에는 소문자 'l'이 총 3번 포함되어 있으므로, 콘솔에는 3이 출력됩니다.

대소문자를 구분하지 않고 세는 방법

만약 대소문자를 구분 없이 세고 싶다면, 문자열과 검색 문자를 모두 소문자로 변환한 뒤 비교하면 됩니다.

let s = "Hello World!";
let searchChar = "l";
let count = 0;

s = s.toLowerCase();
searchChar = searchChar.toLowerCase();

for(let i = 0; i < s.length; i++) {
    if(s[i] === searchChar) {
        count++;
    }
}

console.log(count); // 3

또한 문자 비교 시에는 동등 연산자(==)보다 타입까지 엄격하게 비교하는 일치 연산자(===)를 사용하는 것이 더 안전하고 권장되는 방식입니다.