Javascript中产生固定结果的函数优化技巧_javascript技巧
程序员文章站
2022-05-01 15:37:19
...
分享一个Javascript编写函数的优化技巧。
适用的函数应该要满足以下条件:
产生固定结果
页面中多次调用
复杂或较耗时
代码和分析如下:
Java代码:
//产生固定结果并且在页面中多次调用的函数
function check() {
//模拟耗时操作
var begin = Date.now(); //ECMAScript5添加的,若不支持请改成 +new Date();
var ONE_SECOND = 1000,
result = false;
while(true) {
if(Date.now() - begin >= ONE_SECOND){
result = true;
break;
}
}
//函数重写,直接返回结果
check = function() {
return result;
}
return result;
}
var firstBegin = Date.now();
check(); //第一次函数调用
var firstEnd = Date.now();
check(); //第二次函数调用
var secondEnd = Date.now();
console.log("第一次函数费时:" + (firstEnd - firstBegin) + "ms.");
console.log("第二次函数费时:" + (secondEnd - firstEnd) + "ms.");
显示结果如下:
适用的函数应该要满足以下条件:
产生固定结果
页面中多次调用
复杂或较耗时
代码和分析如下:
Java代码:
复制代码 代码如下:
//产生固定结果并且在页面中多次调用的函数
function check() {
//模拟耗时操作
var begin = Date.now(); //ECMAScript5添加的,若不支持请改成 +new Date();
var ONE_SECOND = 1000,
result = false;
while(true) {
if(Date.now() - begin >= ONE_SECOND){
result = true;
break;
}
}
//函数重写,直接返回结果
check = function() {
return result;
}
return result;
}
var firstBegin = Date.now();
check(); //第一次函数调用
var firstEnd = Date.now();
check(); //第二次函数调用
var secondEnd = Date.now();
console.log("第一次函数费时:" + (firstEnd - firstBegin) + "ms.");
console.log("第二次函数费时:" + (secondEnd - firstEnd) + "ms.");
显示结果如下:
上一篇: linux所有关机命令
推荐阅读
-
元素的内联事件处理函数的特殊作用域在各浏览器中存在差异_javascript技巧
-
Javascript中的isNaN函数使用说明_javascript技巧
-
avascript中的自执行匿名函数应用示例_javascript技巧
-
PHP中的str_repeat函数在JavaScript中的实现_php技巧
-
Javascript中的isNaN函数使用说明_javascript技巧
-
JavaScript中调用函数的4种方式代码实例_javascript技巧
-
JS中把字符转成ASCII值的函数示例代码_javascript技巧
-
Firefox/Chrome/Safari的中可直接使用$/$$函数进行调试_javascript技巧
-
JavaScript中的alert()函数弹出、测试技巧、发出警示用法详解
-
也说JavaScript中String类的replace函数_javascript技巧