indexOf() 方法可返回某个指定的值在字符串或数组中首次出现的位置,对象没有这个方法。
语法
1
| stringObject.indexOf(searchvalue,fromindex)
|
- searchvalue 必需。规定需检索的字符串值。
- fromindex 可选的整数参数。规定在字符串中开始检索的位置。它的合法取值是 0 到 stringObject.length - 1。如省略该参数,则将从字符串的首字符开始检索。
indexOf()
方法对大小写敏感!
如果要检索的字符串值没有出现,则该方法返回 -1。
与indexOf()
相对的方法是lastIndexOf()
。
应用拓展
1 2 3 4 5 6 7 8 9 10 11 12 13
| let str2 = 'qwertyuioasdfghjke'; console.log(str2.indexOf('wer')); console.log(str2.indexOf('e'));
let arr2 = [{aa: 13}, [12, 99], 96, '55', undefined, null]; console.log(arr2.indexOf({aa: 13})); console.log(arr2.indexOf([12, 13])); console.log(arr2.indexOf(96)); console.log(arr2.indexOf('55')); console.log(arr2.indexOf('96')); console.log(arr2.indexOf(55)); console.log(arr2.indexOf(undefined)); console.log(arr2.indexOf(null));
|
indexOf() 可以用来确定数组中是否存在某个基本类型的值或者null
, 从上面的例子可以发现,indexOf无法确定数组和对象的存在,因为
但是如果是引用地址就可以确定是否存在
1 2 3 4 5
| let obj = {aa: 13}; let arr = [12, 99]; let arr2 = [obj, arr, 96, '55', undefined, null]; console.log(arr2.indexOf(obj)); console.log(arr2.indexOf(arr));
|