Javascript中产生固定结果的函数优化技巧


Posted in Javascript onJanuary 16, 2013

分享一个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.");

显示结果如下
Javascript中产生固定结果的函数优化技巧
Javascript 相关文章推荐
jQuery使用手册之三 CSS操作
Mar 24 Javascript
jquery中:input和input的区别分析
Jul 13 Javascript
Javascript在IE和FireFox中的不同表现简析
Dec 03 Javascript
解析Jquery取得iframe中元素的几种方法
Jul 04 Javascript
JavaScript实现获取dom中class的方法
Feb 09 Javascript
jQuery插件pagination实现分页特效
Apr 12 Javascript
jquery实现带缩略图的全屏图片画廊效果实例
Jun 25 Javascript
jQuery匹配文档链接并添加class的方法
Jun 26 Javascript
vue调用高德地图实例代码
Apr 28 Javascript
基于casperjs和resemble.js实现一个像素对比服务详解
Jan 10 Javascript
在Vant的基础上封装下拉日期控件的代码示例
Dec 05 Javascript
小程序二次贝塞尔曲线实现购物车商品曲线飞入效果
Jan 07 Javascript
js 在定义的时候立即执行的函数表达式(function)写法
Jan 16 #Javascript
JQuery验证工具类搜集整理
Jan 16 #Javascript
js 实现在离开页面时提醒未保存的信息(减少用户重复操作)
Jan 16 #Javascript
js拦截alert对话框另类应用
Jan 16 #Javascript
javascript图像处理—仿射变换深度理解
Jan 16 #Javascript
用js获取电脑信息(是使用与IE浏览器)
Jan 15 #Javascript
使用jQuery fancybox插件打造一个实用的数据传输模态弹出窗体
Jan 15 #Javascript
You might like
PHP的变量总结 新手推荐
2011/04/18 PHP
解析CI即CodeIgniter框架在Nginx下的重写规则
2013/06/03 PHP
php实现json编码的方法
2015/07/30 PHP
PHP编写登录验证码功能 附调用方法
2016/05/19 PHP
JavaScript Event事件学习第一章 Event介绍
2010/02/07 Javascript
利用location.hash实现跨域iframe自适应
2010/05/04 Javascript
js通过八个点 拖动改变div大小的实现方法
2014/03/05 Javascript
javascript中call apply 的应用场景
2015/04/16 Javascript
javascript实现简单查找与替换的方法
2015/07/22 Javascript
实例详解jQuery结合GridView控件的使用方法
2016/01/04 Javascript
详解如何在angular2中获取节点
2017/11/23 Javascript
vue-cli项目中使用公用的提示弹层tips或加载loading组件实例详解
2018/05/28 Javascript
js中apply()和call()的区别与用法实例分析
2018/08/14 Javascript
[02:27]刀塔重生降临
2015/10/14 DOTA
python3.3使用tkinter开发猜数字游戏示例
2014/03/14 Python
Python中使用装饰器和元编程实现结构体类实例
2015/01/28 Python
关于Python的一些学习总结
2018/05/25 Python
Python使用matplotlib绘制随机漫步图
2018/08/27 Python
12个Python程序员面试必备问题与答案(小结)
2019/06/24 Python
python中利用numpy.array()实现俩个数值列表的对应相加方法
2019/08/26 Python
pygame实现飞机大战
2020/03/11 Python
scrapy与selenium结合爬取数据(爬取动态网站)的示例代码
2020/09/28 Python
Viking Direct爱尔兰:办公用品和家具
2019/11/21 全球购物
终端业务员岗位职责
2013/11/27 职场文书
高分子材料与工程专业个人求职信
2013/12/15 职场文书
优秀的应届生自荐信
2014/05/23 职场文书
美术课外活动总结
2014/07/08 职场文书
我们的节日中秋活动方案
2014/08/19 职场文书
优秀团员事迹材料1500字
2014/08/31 职场文书
2014年班级工作总结
2014/11/14 职场文书
高考作弊检讨书1500字
2015/02/16 职场文书
2015年留守儿童工作总结
2015/05/22 职场文书
千与千寻观后感
2015/06/04 职场文书
培根随笔读书笔记
2015/07/01 职场文书
感恩父母主题班会
2015/08/12 职场文书
Tomcat配置访问日志和线程数
2022/05/06 Servers