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 相关文章推荐
解读IE和firefox下JScript和HREF的执行顺序
Jan 12 Javascript
五段实用的js高级技巧
Dec 20 Javascript
PHP开发者必须掌握的6个关键字
Apr 14 Javascript
使用text方法获取Html元素文本信息示例
Sep 01 Javascript
jQuery通过点击行来删除HTML表格行的实现示例
Sep 10 Javascript
vue对storejs获取的数据进行处理时遇到的几种问题小结
Mar 20 Javascript
vue项目webpack中Npm传递参数配置不同域名接口
Jun 15 Javascript
vue使用中的内存泄漏【推荐】
Jul 10 Javascript
小程序server请求微信服务器超时的解决方法
May 21 Javascript
JS中实现浅拷贝和深拷贝的代码详解
Jun 05 Javascript
简单了解vue.js数组的常用操作
Jun 17 Javascript
JavaScript(js)处理的HTML事件、键盘事件、鼠标事件简单示例
Nov 19 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
smarty模板中使用get、post、request、cookies、session变量的方法
2014/04/24 PHP
PHP 导出Excel示例分享
2014/08/18 PHP
smarty模板引擎之配置文件数据和保留数据
2015/03/30 PHP
PHP使用自定义方法实现数组合并示例
2016/07/07 PHP
QQ邮箱的一个文本编辑器代码
2007/03/14 Javascript
List the Stored Procedures in a SQL Server database
2007/06/20 Javascript
Javascript 篱式条件判断
2008/08/22 Javascript
jquery图片延迟加载 前端开发技能必备系列
2012/06/18 Javascript
js复制网页内容并兼容各主流浏览器的代码
2013/12/17 Javascript
原生JavaScript实现动态省市县三级联动下拉框菜单实例代码
2016/02/03 Javascript
JS组件系列之Bootstrap table表格组件神器【终结篇】
2016/05/10 Javascript
JS常用倒计时代码实例总结
2017/02/07 Javascript
HTML5+jQuery实现搜索智能匹配功能
2017/03/24 jQuery
Vue.2.0.5实现Class 与 Style 绑定的实例
2017/06/20 Javascript
JS写XSS cookie stealer来窃取密码的步骤详解
2017/11/20 Javascript
js如何找出字符串中的最长回文串
2018/06/04 Javascript
VUE 组件转换为微信小程序组件的方法
2019/11/06 Javascript
Vant 在vue-cli 4.x中按需加载操作
2020/11/05 Javascript
Python3指定路径寻找符合匹配模式文件
2015/05/22 Python
Python递归函数定义与用法示例
2017/06/02 Python
Python基于回溯法子集树模板实现8皇后问题
2017/09/01 Python
Python将多个excel文件合并为一个文件
2018/01/03 Python
TensorFlow实现AutoEncoder自编码器
2018/03/09 Python
pandas获取groupby分组里最大值所在的行方法
2018/04/20 Python
Python基于生成器迭代实现的八皇后问题示例
2018/05/23 Python
漂亮的Django Markdown富文本app插件的实现
2019/01/02 Python
python SocketServer源码深入解读
2019/09/17 Python
详解python中各种文件打开模式
2020/01/19 Python
python中Django文件上传方法详解
2020/08/05 Python
见习期自我鉴定范文
2014/03/19 职场文书
“三支一扶”支教教师思想汇报
2014/09/13 职场文书
2014年医生工作总结
2014/11/21 职场文书
2019最新校园运动会广播稿!
2019/06/28 职场文书
工作违纪的检讨书范文
2019/07/09 职场文书
pytorch MSELoss计算平均的实现方法
2021/05/12 Python
在windows server 2012 r2中安装mysql的详细步骤
2022/07/23 Servers