一个利用正则表达式进行代码重构,去除冗余代码的例子
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");
要获取更多Jerry的原创文章,请关注公众号"汪子熙":
相关推荐
wangzhaotongalex 2020-10-20
wyq 2020-11-11
TLROJE 2020-10-26
风雨断肠人 2020-10-13
duanqingfeng 2020-09-29
rechanel 2020-11-16
cshanzhizi 2020-10-16
luofuIT成长记录 2020-09-22
phphub 2020-09-10
taomengxing 2020-09-07
MaggieRose 2020-08-19
flyingssky 2020-08-18
山水沐光 2020-08-18
jyj00 2020-08-15
AHuqihua 2020-08-09
山水沐光 2020-08-03