몇일 전, 자바스크립트 문제를 풀다가 나에게 아주 작은(?) 시련이 찾아왔다. 주어진 문자열에서 특정 문자의 위치를 찾아내 반환하는 문제였는데, "indexOf 함수를 사용하지 마세요." 라는 조건이 붙은 문제였다. 당연히 indexOf 함수로 해결하는 거 말고는 다른 방법은 도무지 생각해내지 못했다. 결국 나의 선생님, 구글에게 물어보았다. 구글선생은 나에게 search라는 함수가 있다고 알려주었다. 그래서 작성하게 된 포스팅이다.
🙋🏻♀️ indexOf() 가 뭐에요?
💁🏻♀️ string.indexOf( 찾는 문자열, position : [기본값은 0, string에서 특정문자열 찾기를 시작할 위치] )
- indexOf 함수는 문자열(string)에서 특정 문자열(searchvalue)을 찾고,
검색된 문자열이 '첫번째'로 나타나는 위치 index를 리턴한다. - 찾는 문자열이 없으면 -1을 리턴한다.
- 문자열을 찾을 때 대소문자를 구분한다.
예제 1 ) 문자열 '가나다라마바사아자차카타파하'에서 '가'가 처음으로 나타나는 위치의 인덱스 값을 리턴
예제 2 ) 문자열 '가나다라마바사아자차카타파하'에서 '나다라'가 처음으로 나타나는 위치의 인덱스 값을 리턴
예제 3 ) 문자열 '가나다라마바사아자차카타파하'에서 '마바'가 처음으로 나타나는 위치의 인덱스 값을 리턴
예제 4 ) 문자열 '가나다라바다사아자차카타파하'에는 '별'이라는 문자열이 없으므로 숫자 -1을 리턴
🙋🏻♀️ search()가 뭐에요?
💁🏻♀️ string.search(찾는 문자열)
- search()함수는 문자열에서 조건 문자열을 찾아서 몇 번째 위치에 확인을 해주는 함수다.(공백포함해서 세어줌)
- 첫번째로 매치되는 인덱스를 반환해준다.
- 만약 없으면 -1을 반환한다.
- 즉, 검색되는 문자열의 위치값을 반환해준다.
indexOf()함수와 search()함수의 차이점은 ?
indexOf()는 2번째 매개변수 찾을 위치(from)를 줄 수 있고, search()는 줄 수 없다.
'JAVASCRIPT' 카테고리의 다른 글
[JS] includes() 메소드 - 특정 단어 포함 유무 확인 함수 (0) | 2022.02.13 |
---|---|
[JS] Trim( )메소드 - 공백 제거 함수 (0) | 2022.02.13 |
[JS] 이벤트 버블링 (0) | 2022.02.12 |
댓글