728x90
lastIndexOf()
String.lastIndexOf((searchValue[, fromIndex]))
lastIndexOf() 는 현재 문자열에서 지정된 문자열을 fromIndex로부터 역순으로 탐색하여 최초로 마주치는 인덱스를 반환합니다.
즉 마지막으로 시작되는 인덱스를 반환합니다.
let str = 'hello world';
str.lastIndexOf('l'); // 결과 : 9
str.lastIndexOf('L'); // 결과 : -1
str.lastIndexOf('h'); // 결과 : 0
let str2 = 'JavaScript';
str2.lastIndexOf('a'); // 결과 : 3 (최초 인덱스 반환)
str2.lastIndexOf('A'); // 결과 : -1 (대소문자 구분)
let fruit = ['apple', 'banana', 'orange', 'banana'];
fruit.lastIndexOf('orange', 2); // 결과 : 2
- 대소문자 구분
- 배열에서도 사용 가능
- 존재하지 않는다면 -1 반환
특정 문자를 인덱스를 찾는 함수는 앞서 알아보았던 indexOf() 함수가 있습니다.
lastindexOf()는 indexOf()와 다른 점은 fromIndex로부터 역순으로 탐색을 한다는 점입니다.
주로 가장 나중에 등장하는 문자나 접미사를 찾을 때 사용하면 유용한 함수입니다.
let anyString = "Brave new world";
console.log("시작점으로부터 처음 만나는 w의 위치는 " + anyString.indexOf("w"));
// logs 8
console.log(
"끝점으로부터 처음 만나는 w의 위치는 " + anyString.lastIndexOf("w"),
);
// logs 10
console.log(
'시작점으로부터 처음 만나는 "new"의 위치는 ' + anyString.indexOf("new"),
);
// logs 6
console.log(
'끝점으로부터 처음 만나는 "new"의 위치는 ' + anyString.lastIndexOf("new"),
);
// logs 6