作为JavaScript的新手,我不知道什么时候使用它们。

有人能帮我解释一下吗?


当前回答

IndexOf() -它接受字符串字面量或字符串对象,但不接受正则表达式。它还接受一个从零开始的整数值来开始搜索,例如:

“babyelephant .indexOf(“e”);//得到4 “babyelephant .indexOf(“e”,5);//搜索结果为6 从第6个位置或第5个索引开始。 Var m= /e/;“babyelephant .indexOf (m);//给出-1,因为它没有 接受正则表达式。

Search() -接受字符串字面量或字符串对象和正则表达式。但是它不接受开始搜索的索引。

其他回答

indexOf用于普通子字符串,search用于正则表达式。

搜索函数(这里的一个描述)接受一个正则表达式,它允许您匹配更复杂的模式、不区分大小写的字符串等,而indexOf(这里的一个描述)只匹配文字字符串。但是,indexOf还允许指定开始索引。

搜索发现它与正则表达式匹配,但没有偏移量。IndexOf使用字面量进行匹配,但有一个偏移量。

IndexOf

搜索

如果您的情况需要使用正则表达式,则使用search()方法,否则;indexOf()方法性能更好。

我认为主要的区别是搜索接受正则表达式。

检查一下参考资料:

搜索 indexOf