js中indexOf和lastIndexOf的用法及区别

文章目录[隐藏]

前言:

JavaScript 中,如果需要判断某个字符或字符串在另一字符串中首次出现的位置,我们首先想到的肯定就是indexOf了,但是有时候我们也会遇到查询一个字符串最后出现的位置lastIndexOf,这个方法和 indexOf 不同的是:

lastIndexOf 是从后向前查询,返回的是指定的字符串值最后出现的位置(记住这个最后是以从左到右为维度的,看下面栗子就会明白的)。

案例一:


// 此例子由 it 宅个人博客独家发布,转载请注明来源
/* 此处我想查询 c 出现的位置,因为此处只有一个 c 所以用 indexOf 和 lastIndexOf 都可以 */

var longStr = 'itzhai.cn';
// lastIndex, 查询 c 第一次出现的位置
var index = longStr.indexOf('c');

// lastIndexOf, 查询 c 最后一次出现的位置
var lastIndex = longStr.lastIndexOf('c')
// 结果 indexOf:7 lastIndexOf: 7
console.log('indexOf:' + index + ' ' + 'lastIndexOf: ' + lastIndex)

案例二

// 此例子由 it 宅个人博客独家发布,转载请注明来源
var longStr = 'itzhai.cn';
// lastIndex, 查询 i 第一次出现的位置
var index = longStr.indexOf('i');

// lastIndexOf, 查询 i 最后一次出现的位置
var lastIndex = longStr.lastIndexOf('i')
// indexOf:0 lastIndexOf: 5
console.log('indexOf:' + index + ' ' + 'lastIndexOf: ' + lastIndex)

总结

在我们使用过程中:
如果查询一个字符串首次出现的位置则用 indexOf;
如果查询一个字符串最后出现的位置则用 lastIndexOf
posted @ 2019-11-16 15:32  不随。  阅读(46)  评论(0编辑  收藏  举报  来源