상세 컨텐츠

본문 제목

자바스크립트 indexOf

자바스크립트

by 개미는내일도뚠뚠 2022. 1. 19. 11:12

본문

특정 문자가 문자열의 어느 index에 위치하는지 찾는 방법.

 

기본 골격

 

string.indexOf(searchvalue, position)

 

문자열(string)에서 특정 문자열(searchvalue)을 찾고, 검색된 문자열이 '첫번째'로 나타나는 위치 index를 리턴.

 

파라미터

* searchvalue : 필수 입력값, 찾을 문자열

* position : optional, 기본값은 0, string에서 searchvalue를 찾으려하는 시작 위치

 

찾을 문자열이 없으면 -1을 리턴

문자열을 찾을 때 대소문자를 구분

 

예제 출처 : https://hianna.tistory.com/379

 

예제1

const str = "abab";

document.writeln(str.indexOf('ab')); // 0
document.writeln(str.indexOf('ba')); // 1
document.writeln(str.indexOf('abc')); // -1
document.writeln(str.indexOf('AB')); // -1

 

예제2

const str = "abab";

document.writeln(str.indexOf('ab')); // 0
document.writeln(str.indexOf('ab', 1)); // 2

indexOf는 발견한 최초의 문자열 위치값만 보내줌. 만약 모든 위치를 찾고싶으면 다음과 같은 방법도 있음.

let str = 'abcabcabc';
let searchvalue = 'ab'; 

let pos = 0;
while (true) {
  let foundPos = str.indexOf(searchvalue, pos);
  if (foundPos == -1) break;

  document.writeln( foundPos );
  pos = foundPos + 1; 
}

 

관련글 더보기