js中indexOf参数问题
解析:
indexOf 参数
第一个参数是查找的内容
第二个参数是从第几个开始找
1.字符串
let a = 'qqqqeasdhkjlzxcvbmhuo'
console.log(a.indexOf('e',1)) // 结果是4
``
同时也会包含另外一个情况 如下:
let a = 'qqqqeasdhkjlzxcvbmhuo'
console.log(a.indexOf('e',5)) // 返回的是-1
也就是说indexof结果有两个
- 按照一个个案例来找到了机会返回当前的下标(也就是第几个)
- 如果在当前的字符串中没有找到对应的字符串那么就会返回-1
2.数组
let b = [1,2,3,4,5,6,7,8,9]
console.log(b.indexOf(4,3)) //3
数组也会有另外一个情况也就是-1
let b = [1,2,3,4,5,6,7,8,9]
console.log(b.indexOf(4,6)) // -1
切记:数组的下标是从0 开始的(解析同上)
indexof还有一种用法
在数组中找到是不是存在某一个值,没有同样返回 -1 (随便举个例子)
let srcFile = '121235645dsad.txt'
const imgsArrayFile = ['ewqe', 'dsadsa', '3543', 'ewqeewq', 'dsdsa', 'dsadsa', 'kjkh', 'kjh', 'kjh']
let ext = srcFile.substring(srcFile .lastIndexOf('.') + 1, srcFile .length)
console.log(imgsArrayFile.indexOf(ext) < -1) // true