首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Javascript -预编译的regex性能

Javascript -预编译的regex性能
EN

Stack Overflow用户
提问于 2013-02-19 07:38:12
回答 3查看 6.6K关注 0票数 4

this帖子中,有人说预编译正则表达式将提高脚本性能。作者用performance test证明了这一点。然而,据我所知,这篇文章讨论的是重复使用正则表达式的情况。如果脚本中有许多正则表达式,但每个正则表达式只使用一次,该怎么办?在整个脚本中只使用一次的预编译正则表达式会带来性能上的好处吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-02-19 07:40:17

如果它只使用一次,那么就使用regexp字面量。

你的观点是正确的-只有当你经常使用相同的正则表达式时,它才有意义。

票数 1
EN

Stack Overflow用户

发布于 2018-01-23 15:36:03

我认为这取决于浏览器的实现,我们不能断言一种方法更好。

查看firefox和chrome中的不同结果。

我搞不懂为什么chrome对未重新编译的正则表达式提供更快的结果。

票数 3
EN

Stack Overflow用户

发布于 2014-02-20 23:06:14

我不相信你链接的性能测试是决定性的。如果查看结果,差异可以忽略不计,因为正则表达式还不够复杂。看看this测试可以找到更好的答案。

无论采用哪种方式,存储正则表达式只会在多次使用正则表达式的情况下提高性能。这种性能提升完全是由于regex本身的初始编译开销造成的。如果您将正则表达式存储在一个变量中,那么它仍将在第一次编译时被编译,就像文本将在第一次被编译一样。当第二次使用存储的正则表达式并且它已经被编译时,就会发生这种差异,而文本正则表达式则必须再次编译。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14947307

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档