Sử dụng phương thức lastIndexOf() của String. Trả về chỉ số của lần xuất hiện cuối cùng của chuỗi con, hoặc -1 nếu không tìm thấy.
Cú pháp
string.lastIndexOf(searchValue[, fromIndex])
searchValue: Chuỗi cần tìm.fromIndex(tùy chọn): Vị trí bắt đầu tìm ngược (mặc định: độ dài chuỗi - 1).
Ví dụ
<!DOCTYPE html>
<html>
<body>
<script>
var str = "Học miễn phí và tận hưởng! Học và chia sẻ!";
var idx1 = str.lastIndexOf("Học");
document.write("lastIndexOf 'Học': " + idx1 + "<br>"); // 27
var idx2 = str.lastIndexOf("và");
document.write("lastIndexOf 'và': " + idx2 + "<br>"); // 31
var idx3 = str.lastIndexOf("xyz");
document.write("lastIndexOf 'xyz': " + idx3 + "<br>"); // -1 (không có)
// Tìm ngược từ vị trí 20
var idx4 = str.lastIndexOf("Học", 20);
document.write("lastIndexOf 'Học' từ 20: " + idx4); // 0
</script>
</body>
</html>
Phương thức liên quan:
| Phương thức | Mô tả |
|---|---|
indexOf() | Tìm lần xuất hiện đầu tiên (từ trái sang). |
lastIndexOf() | Tìm lần xuất hiện cuối cùng (từ phải sang). |
search() | Tìm regex, trả về index đầu tiên. |
matchAll() | Tất cả match của regex (iterator). |
Lưu ý:
- Phân biệt chữ hoa/thường (case-sensitive).
- Để không phân biệt hoa/thường:
str.toLowerCase().lastIndexOf(search.toLowerCase()). - Trả về
-1nếu không tìm thấy (không ném exception).