您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

检查字符串的最快方法是在JavaScript中包含另一个子字符串?

检查字符串的最快方法是在JavaScript中包含另一个子字符串?

您有两个可能性:

正则表达式:

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

// or /word/.test(str)

indexOf

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

不能肯定地说哪种方法更快。浏览器之间的差异是巨大的。虽然在Chrome 10中indexOf似乎更快,但在Safari 5indexOf中显然比任何其他方法都慢。

您必须看到并尝试自我。这取决于您的需求。例如 ,不区分大小写的 搜索使用正则表达式会更快。

为了使人们免于自己运行测试,以下是大多数常见浏览器的当前结果,这些百分比表示性能比第二快的结果有所提高(在不同的浏览器中有所不同):

indexOf(?98%快)<-- wow 缓存RegExp( %快) 缓存RegExp(?10%快) indexOf(?18%快) 缓存RegExp(?0.4%快)

请注意, 缓存的RegExp 是:var r = new RegExp('simple'); var c =r.test(str);相对于:/simple/.test(str)

javascript 2022/1/1 18:14:48 有456人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶