본문 바로가기
자바스크립트

[JAVASCRIPT] 문자열이 특정 문자열로 시작하는지(or 끝나는지) 확인하는 방법 - startsWith(), endsWith()

by jaewooojung 2024. 1. 3.

JAVASCRIPT


startsWith(), endsWith()

문자열 파싱이나 검색은 알고리즘 문제에 나오는 단골손님입니다. 문자열과 관련된 기능을 자유롭게 다루지 못하면 문제 풀이의 시작조차 어려운 경우가 많습니다. 이 글에서는 자바스크립트 String에 있는 메서드들 중 startsWithendsWith에 대해서 살펴보겠습니다. 글 하단의 MDN 링크를 타고 들어가시면 다른 여러 메서드들을 보실 수 있습니다. 한글 번역이 잘 되어 있습니다.

 

1. startsWith

구문

startsWith(searchString)
startsWith(searchString, position)

문자열이 searchString으로 시작하면 true, 아니면 false를 반환합니다. 두 번째 인자로 position값을 전달하면 탐색할 시작위치를 정할 수 있습니다. 기본값은 0입니다.

 

예시

const str = "Tom is thinking";
const name = "Tom";
console.log(str.startsWith(name)); // true
const str = "Tom is thinking";
const name = "T";
console.log(str.startsWith(name)); // true

문자열이 Tom으로 시작한다. T로 시작한다. 모두 참이므로 true를 반환합니다.

 

const str = "Tom is thinking";
const name = "Jerry";
console.log(str.startsWith(name)); // false

Jerry로 시작하지 않으므로 false를 반환합니다.

 

두 번째 인자를 활용하는 경우

const str = "Tom is thinking";
console.log(str.startsWith("is", 4)); // true

4번째 인덱스부터 탐색을 시작하면 is로 시작하므로 true를 반환합니다.

 

const str = "Tom is thinking";
console.log(str.startsWith("is", 3)); // false

3번째 인덱스부터 탐색을 시작하면 공백(" ")으로 시작하므로 false를 반환합니다.

 

 

2. endsWith

구문

str.endsWith(searchString[, length])

 

문자열이 searchString으로 끝나면 true, 아니면 false를 반환합니다. 두 번째 인자로 전달한 length의 범위 안에서 문자열을 검색합니다.

 

예시

const str = "Tom is thinking";
const action = "thinking";
console.log(str.endsWith(action)); // true
const str = "Tom is thinking";
const action = "ing";
console.log(str.endsWith(action)); // true

문자열이 thinking으로 끝난다. ing로 끝난다. 모두 참이므로 true를 반합니다.

 

const str = "Tom is thinking";
const action = "dancing";
console.log(str.endsWith(action)); // false

 dancing으로 끝나지 않으므로 false를 반환합니다.

 

const str = "Tom is thinking";
console.log(str.endsWith("thinking", 6)); // false

길이 6에서 자른 문자열("Tom is")은 thinking으로 끝나지 않으므로 false를 반환합니다.

 

const str = "Tom is thinking";
console.log(str.endsWith("thinking", 12)); // false

길이 12에서 자른 문자열("Tom is think")이 thinking으로 끝나지 않으므로 false를 반환합니다.

 

const str = "Tom is thinking";
console.log(str.endsWith("think", 12)); // true

길이 12에서 자른 문자열("Tom is think")이 think로 끝나므로 true를 반환합니다.

 

 


MDN document - String.prototype.startsWith()

 

String.prototype.startsWith() - JavaScript | MDN

startsWith() 메서드는 어떤 문자열이 특정 문자로 시작하는지 확인하여 결과를 true 혹은 false로 반환합니다.

developer.mozilla.org

MDN document - String.prototype.endsWith()

 

String.prototype.endsWith() - JavaScript | MDN

The endsWith() 메서드를 사용하여 어떤 문자열에서 특정 문자열로 끝나는지를 확인할 수 있으며, 그 결과를 true 혹은 false로 반환한다.

developer.mozilla.org

 



        
답변을 생성하고 있어요.