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 相关文章推荐
JS的数组的扩展实例代码
Jul 09 Javascript
JavaScript OOP面向对象介绍
Dec 02 Javascript
js jq 单击和双击区分示例介绍
Nov 05 Javascript
JS设置网页图片vspace和hspace属性的方法
Apr 01 Javascript
JS延时提示框实现方法详解
Nov 26 Javascript
jQueryUI中的datepicker使用方法详解
May 25 Javascript
React Native模块之Permissions权限申请的实例相机
Sep 28 Javascript
基于模板引擎Jade的应用(详解)
Dec 12 Javascript
Vue实现带进度条的文件拖动上传功能
Feb 23 Javascript
element vue Array数组和Map对象的添加与删除操作
Nov 14 Javascript
Node4-5静态资源服务器实战以及优化压缩文件实例内容
Aug 29 Javascript
JS实现关闭小广告特效
Jan 29 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里大量数据循环时内存耗尽的方法
2015/10/10 PHP
laravel 实现根据字段不同值做不同查询
2019/10/23 PHP
精解window.setTimeout()&window.setInterval()使用方式与参数传递问题!
2007/11/23 Javascript
JavaScript类型转换方法及需要注意的问题小结(挺全面)
2010/11/11 Javascript
JS模拟面向对象全解(二、类型与赋值)
2011/07/13 Javascript
JQuery获取浏览器窗口内容部分高度的代码
2012/02/24 Javascript
自己实现string的substring方法 人民币小写转大写,数字反转,正则优化
2012/09/02 Javascript
jQuery中filter()方法用法实例
2015/01/06 Javascript
JavaScript运动减速效果实例分析
2015/08/04 Javascript
JS简单模拟触发按钮点击功能的方法
2015/11/30 Javascript
详解JS面向对象编程
2016/01/24 Javascript
用NODE.JS中的流编写工具是要注意的事项
2016/03/01 Javascript
BootStrap 智能表单实战系列(五) 表单依赖插件处理
2016/06/13 Javascript
深入学习Bootstrap表单
2016/12/13 Javascript
详解javascript中对数据格式化的思考
2017/01/23 Javascript
在vue里面设置全局变量或数据的方法
2018/03/09 Javascript
js统计页面上每个标签的数量实例代码
2018/05/29 Javascript
详解nuxt sass全局变量(公共scss解决方案)
2018/06/27 Javascript
vue插件开发之使用pdf.js实现手机端在线预览pdf文档的方法
2018/07/12 Javascript
vue实现倒计时获取验证码效果
2020/04/17 Javascript
适合前端Vue开发童鞋的跨平台Weex的使用详解
2019/10/16 Javascript
vue指令v-html使用过滤器filters功能实例
2019/10/25 Javascript
[05:26]2014DOTA2西雅图国际邀请赛 iG战队巡礼
2014/07/07 DOTA
Python入门篇之列表和元组
2014/10/17 Python
Python生成密码库功能示例
2017/05/23 Python
python3.4实现邮件发送功能
2018/05/28 Python
python实现遍历文件夹修改文件后缀
2018/08/28 Python
Python3几个常见问题的处理方法
2019/02/26 Python
python 为什么说eval要慎用
2019/03/26 Python
PyTorch实现更新部分网络,其他不更新
2019/12/31 Python
C语言面试题
2015/10/30 面试题
教师岗位聘任书范文
2014/03/29 职场文书
2014办公室副主任四风对照检查材料思想汇报
2014/09/20 职场文书
教师党员自我剖析材料
2014/09/29 职场文书
社区活动总结
2015/02/04 职场文书
创业分两种人:那么哪些适合创业?,哪些适合不适合创业呢?
2019/08/23 职场文书