indexof

indexof

语法:str.indexOf(searchValue [, fromIndex])

参数:searchValue:要被查找的字符串值。

如果没有提供确切地提供字符串,[searchValue 会被强制设置为"undefined"], 然后在当前字符串中查 找这个值。

举个例子:'undefined'.indexOf()将会返回0,因为undefined在位置0处被找到,但是'undefine'.indexOf()将会返回 -1 ,因为字符串'undefined'未被找到

fromIndex:可选

数字表示开始查找的位置。可以是任意整数,默认值为0。

如果fromIndex的值小于0,或者大于str.length,那么查找分别从0和str.length开始。(译者 注:fromIndex的值小于0,等同于为空情况;fromIndex的值大于或等于str.length,那么结果 会直接返回-1。)

举个例子,'hello world'.indexOf('o', -5)返回4,因为它是从位置0处开始查找,然后o在位置4处被找到。另一方面,'hello world'.indexOf('o', 11)(或fromIndex填入任何大于11的值) 将会返回-1,因为开始查找的位置11处,已经是这个字符串的结尾了。

返回值:

查找的字符串searchValue的第一次出现的索引,如果没有找到,则返回-1。

若被查找的字符串searchValue是一个空字符串,则返回fromIndex。如果fromIndex值为空,或者fromIndex值小于被查找的字符串的长度,返回值和以下的fromIndex值一样。

如果fromIndex值大于等于字符串的长度,将会直接返回字符串的长度(str.length)

特点:

1. 严格区分大小写

2. 在使用indexOf检索数组时,用‘===’去匹配,意味着会检查数据类型

posted @ 2022-03-12 22:00  宁凯  阅读(627)  评论(0)    收藏  举报