본문 바로가기
javaScript/JS Tutorial

[javaScript] 지정된 텍스트 인덱스 위치 반환 indexOf() lastIndexOf()

by mooyou 2022. 9. 24.
728x90
300x250
SMALL

indexOf()

첫 번째 문자열 부터 시작해서 지정된 텍스트의 첫 번째 인덱스 위치를 반환한다.

<p id="demo"></p>

<script>
let str = "Please locate where 'locate' occurs!";
document.getElementById("demo").innerHTML = str.indexOf("locate");
</script>

실행결과

7

0번째부터 시작해서 첫번째 지정된 문자열의 인덱스 위치 값을 반환한다.

 

 

lastIndexOf()

문자열에서 지정된 텍스트가 마지막으로 나타나는 인덱스를  반환한다.

<p id="demo"></p>

<script>
let str = "Please locate where 'locate' occurs!";
document.getElementById("demo").innerHTML = str.lastIndexOf("locate");
</script>

실행결과

21

 

 

지정된 문자열을 찾지 못할경우

<p id="demo"></p>

<script>
let str = "Please locate where 'locate' occurs!";
document.getElementById("demo").innerHTML = str.indexOf("John");
</script>

실행결과

-1

지정된 문자열을 찾지 못한경우 -1을 반환한다. indexOf(), lastIndexOf() 동일

 

검색의 시작 위치 지정하기

indexOf()

<p id="demo"></p>

<script>
let str = "Please locate where 'locate' occurs!";
document.getElementById("demo").innerHTML = str.indexOf("locate",15);
</script>

실행결과

21

indexOf()를 사용했지만 검색위치를 15지점 부터 시작했기 때문에 2번째 locate 위치의 인덱스가 반환된다.

 

lastIndexOf()

<p id="demo"></p>

<script>
let str = "Please locate where 'locate' occurs!";
document.getElementById("demo").innerHTML = str.lastIndexOf("locate", 15);
</script>

실행결과

7

lastIndexOf()를 사용할 경우 끝에서 부터 역방향으로 시작하기 때문에 15위치에서 앞부분으로 검색하게 된다.

 

 

참고: https://www.w3schools.com/js/js_string_search.asp

728x90
반응형
LIST

댓글