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下判断Id是否存在的代码
Jan 06 Javascript
$.format,jquery.format 使用说明
Jul 13 Javascript
如何使用Javascript正则表达式来格式化XML内容
Jul 04 Javascript
JQuery each打印JS对象的方法
Nov 13 Javascript
js获取当前路径的简单示例代码
Jan 08 Javascript
通过隐藏iframe实现文件下载的js方法介绍
Feb 26 Javascript
了不起的node.js读书笔记之mongodb数据库交互
Dec 22 Javascript
js事件处理程序跨浏览器解决方案
Mar 27 Javascript
vue利用v-for嵌套输出多层对象,分别输出到个表的方法
Sep 07 Javascript
js实现时分秒倒计时
Dec 03 Javascript
Vue实现base64编码图片间的切换功能
Dec 04 Javascript
基于Vant UI框架实现时间段选择器
Dec 24 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实现监听事件
2013/11/06 PHP
ThinkPHP表单自动提交验证实例教程
2014/07/18 PHP
php字符串截取函数用法分析
2014/11/25 PHP
PHP中SimpleXML函数用法分析
2014/11/26 PHP
Yii使用smsto短信接口的函数demo示例
2016/07/13 PHP
PHP call_user_func和call_user_func_array函数的简单理解与应用分析
2019/11/25 PHP
一个不错的应用,用于提交获取文章内容,不推荐用
2007/03/03 Javascript
javascrip关于继承的小例子
2013/05/10 Javascript
浅析showModalDialog数据缓存问题(用禁止浏览器缓存解决)
2013/07/09 Javascript
jQuery的css() 方法使用指南
2015/05/03 Javascript
JS打字效果的动态菜单代码分享
2015/08/21 Javascript
详解Bootstrap创建表单的三种格式(一)
2016/01/04 Javascript
JavaScript File分段上传
2016/03/10 Javascript
js发送短信倒计时的简单实现方法
2016/09/08 Javascript
javascript实现根据汉字获取简拼
2016/09/25 Javascript
vue-cli与webpack处理静态资源的方法及webpack打包的坑
2018/05/15 Javascript
JavaScript鼠标拖拽事件详解
2020/04/03 Javascript
基于element-ui封装表单金额输入框的方法示例
2021/01/06 Javascript
[51:53]完美世界DOTA2联赛循环赛 LBZS vs DM BO2第二场 11.01
2020/11/02 DOTA
Python的collections模块中namedtuple结构使用示例
2016/07/07 Python
Linux系统(CentOS)下python2.7.10安装
2018/09/26 Python
将pandas.dataframe的数据写入到文件中的方法
2018/12/07 Python
利用Python正则表达式过滤敏感词的方法
2019/01/21 Python
Python GUI编程完整示例
2019/04/04 Python
Python 函数list&read&seek详解
2019/08/28 Python
TensorFlow tf.nn.conv2d_transpose是怎样实现反卷积的
2020/04/20 Python
从Pytorch模型pth文件中读取参数成numpy矩阵的操作
2021/03/04 Python
css3 条纹化和透明化表格Firefox下测试成功
2014/04/15 HTML / CSS
阿迪达斯荷兰官方网站:adidas荷兰
2018/03/16 全球购物
Sport-Thieme荷兰:购买体育用品
2019/08/25 全球购物
国际贸易个人求职信范文
2014/01/04 职场文书
校园演讲稿汇总
2014/05/21 职场文书
大学生实习证明范本
2014/09/19 职场文书
社区元宵节活动总结
2015/02/06 职场文书
幼儿教师继续教育培训心得体会
2016/01/19 职场文书
关于考试抄袭的检讨书
2019/11/02 职场文书