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

JavaScript로 문자열이 특정 문자열로 시작하는지 확인하는 방법

두 개의 문자열을 인수로 받아, 첫 번째 문자열이 두 번째 문자열로 시작하는지 여부를 판별하여 true 또는 false를 반환하는 JavaScript 함수를 작성해 보겠습니다.

예를 들어 다음과 같은 경우를 생각해 볼 수 있습니다.

두 문자열이 다음과 같다면:
"Disaster management report"
"Disas"

함수는 true를 반환해야 합니다.

구현 예제

먼저 직접 함수를 작성하는 방법을 살펴보겠습니다. 두 번째 문자열의 길이만큼 첫 번째 문자열 앞부분을 잘라낸 뒤, 그 결과가 두 번째 문자열과 일치하는지 비교하면 됩니다.

const first = 'The game is on';
const second = 'The';

const startsWith = (first, second) => {
   const { length } = second;
   const { length: l } = first;
   const sub = first.substr(0, length);
   return sub === second;
};

console.log(startsWith(first, second));

출력 결과

콘솔에 출력되는 결과는 다음과 같습니다.

true

내장 메서드 startsWith() 활용하기

사실 모던 JavaScript에서는 위와 같은 로직을 직접 구현할 필요 없이, ES6에서 도입된 내장 메서드 String.prototype.startsWith()를 사용하면 훨씬 간결하게 처리할 수 있습니다.

const first = 'The game is on';
const second = 'The';

console.log(first.startsWith(second)); // true

이 메서드는 대소문자를 구분하며, 필요하다면 검색을 시작할 위치를 두 번째 인수로 지정할 수도 있습니다. 대부분의 경우 내장 메서드를 사용하는 것이 가독성과 성능 면에서 더 권장됩니다.