问答详情
源自:10-1 [JavaScript]正则表达式

为何用RegExp对象的compile方法?

var p=/a/;
p.compile('b');
p=/b/;//这样直接重新赋值不也可以吗?为何用compile?


提问者:qq_杀意隆_0 2018-01-04 11:41

个回答

  • 津渡坞
    2018-01-13 21:41:45
    已采纳

    编译之后的正则表达式执行速度将会提高,如果正则表达式多次被调用,那么调用compile方法可以有效的提高代码的执行速度,如果该正则表达式只能被使用一次,则不会有明显的效果。

    我试了下,直接赋值,结果也是一样的。我认为使用compile应该就是性能上的考虑了。

    http://www.w3school.com.cn/jsref/jsref_regexp_compile.asp

    http://img.mukewang.com/5a5a0c7e0001259c04420202.jpg