最快的方法来检查字符串包含Javascript中的另一个子字符串?

我正在处理一个关于Javascript的性能问题。所以我只想问:什么是最快的方式来检查字符串是否包含另一个子字符串(我只需要布尔值)?你能请你的想法和示例代码段吗?非常感谢!
你有两个可能:

> Regular expression

(new RegExp('word')).test(str)
// or
/word/.test(str)

> indexOf

str.indexOf('word') !== -1

Regular expressions seem to be faster(至少在Chrome 10中)。

Performance test – short haystack
Performance test – long haystack

更新:

它不能肯定地说,哪个方法更快。浏览器之间的区别是巨大的。虽然在Chrome 10 indexOf似乎更快,在Safari 5中,indexOf明显慢于任何其他方法。

你必须看看,为自己努力。这取决于你的需要。例如,对于正则表达式,不区分大小写的搜索方式更快。

http://stackoverflow.com/questions/5296268/fastest-way-to-check-a-string-contain-another-substring-in-javascript

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:最快的方法来检查字符串包含Javascript中的另一个子字符串?