ITPub博客

首页 > 应用开发 > IT综合 > 一个利用正则表达式进行代码重构,去除冗余代码的例子

一个利用正则表达式进行代码重构,去除冗余代码的例子

原创 IT综合 作者:i042416 时间:2020-03-09 09:05:36 0 删除 编辑

refact之前:大量的重复代码

refact之后:用map消除了重复代码。

现在的分支里每次执行检查都要先 var usRegx = /XXXX/. 实际上通过字面量定义了一个正则表达式对象,开销比定义一个String大。其实没必要每次都定义,可以把map定义在controller的一个全局属性上。

执行这段代码就可看出字符串常量和正则表达式字面量的性能差异:

var N = 100000000;
console.time("normal string");
for( var i = 0; i < N; i++){
var a = "a";
}
console.timeEnd("normal string");
console.time("regular exp");
for( var i = 0; i < N; i++){
var b = /^[0-9]{5}$|^[0-9]{5}-[0-9]{4}$/;
}
console.timeEnd("regular exp");


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/24475491/viewspace-2679098/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
测试

注册时间:2018-01-20

  • 博文量
    3822
  • 访问量
    1982780