9-6 正则编译的效果.htm

来自「JAVASCRIPT完全自学手册,中源码的验证修订实例」· HTM 代码 · 共 34 行

HTM
34
字号
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=GB2312" />
<title>9-6  正则编译的效果</title>
<!-- 样式表 -->
<style>
* { font-size:12px; font-family:宋体, Arial; } /*规定了所有的字体样式*/
</style>
<script>

function init(){
    var str, regObj, t01, t02, startTime;
    str = "AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpAaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpAaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpAaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpAaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpAaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPp";
    startTime = new Date();
    regObj = /kLlMmNnOoPpAaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpAaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpAaBbCc/g;
    for(var i=0; i<50000; i++){
        str.match(regObj);
    }
    t01 = (new Date()) - startTime;
    regObj = regObj.compile("kLlMmNnOoPpAaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpAaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpAaBbCc", "g");
    startTime = new Date();
    for(var i=0; i<50000; i++){
        str.match(regObj);
    }
    t02 = (new Date()) - startTime;
    alert("循环执行50000遍,\r\n未编译的正则耗时 "+t01+"毫秒,\r\n已编译的正则耗时"+t02+"毫秒");
}

window.onload = init;
</script>
</head>
<body style="overflow:auto;">
</body>
</html>

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?