浅谈js算法和流程控制


Posted in Javascript onDecember 29, 2016

代码整体结构是执行速度的决定因素之一。 代码量少不一定运行速度快, 代码量多也不一定运行速度慢。

性能损失与代码组织方式和具体问题解决办法直接相关。

倒序循环可以提高性能,如:

for (var i=items.length; i--; ){
 process(items[i]);
}

控制件与 true 值进行比较,任何非零数字自动强制转换为 true,而零等同于 false。实际上,控制条件已经从两次比较(迭代少于总数吗?它等于 true 吗?)减少到一次比较(它等于 true 吗?)。将每个迭代中两次比较减少到一次可以大幅度提高循环速度。

减少迭代次数:达夫循环。在循环次数较多时可以有效提高循环速度。

查表法可以减少条件判断数量。当有大量离散值需要测试时,if-else 和 switch 都比使用查表法要慢得多。在 JavaScript 中查表法可使用数组或者普通对象实现,查表法访问数据比 if-else 或者 switch 更快,特别当条件体的数目很大时。

制表可以减少重复计算。通过缓存先前计算结果为后续计算所重复使用,避免了重复工作。

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
页面只有一个text的时候,回车自动submit的解决方法
Aug 12 Javascript
JS实现跟随鼠标立体翻转图片的方法
May 04 Javascript
js中对函数设置默认参数值的3种方法
Oct 23 Javascript
Angularjs的ng-repeat中去除重复数据的方法
Aug 05 Javascript
微信js-sdk分享功能接口常用逻辑封装示例
Oct 13 Javascript
AngularJS入门教程之路由机制ngRoute实例分析
Dec 13 Javascript
js实现常见的工具条效果
Mar 02 Javascript
如何解决vue与传统jquery插件冲突
Mar 20 Javascript
基于vue的短信验证码倒计时demo
Sep 13 Javascript
angularJs-$http实现百度搜索时的动态下拉框示例
Feb 27 Javascript
webpack4 optimization使用总结
Nov 10 Javascript
用JS实现选项卡
Mar 23 Javascript
canvas学习之API整理笔记(二)
Dec 29 #Javascript
Node.js复制文件的方法示例
Dec 29 #Javascript
详解微信小程序——自定义圆形进度条
Dec 29 #Javascript
JS作用域深度解析
Dec 29 #Javascript
javascript中的深复制详解及实例分析
Dec 29 #Javascript
canvas学习之API整理笔记(一)
Dec 29 #Javascript
Javascript Function.prototype.bind详细分析
Dec 29 #Javascript
You might like
php引用地址改变变量值的问题
2012/03/23 PHP
浅谈php中的循环while、do...while、for、foreach四种循环
2016/11/05 PHP
实现PHP中session存储及删除变量
2018/10/15 PHP
浅谈Laravel中的三种中间件的作用
2019/10/13 PHP
javascript 判断数组是否已包含了某个元素的函数
2010/05/30 Javascript
判断浏览器的javascript版本的代码
2010/09/03 Javascript
JS 如何获取radio选中后的值及不选择取radio的值
2013/10/28 Javascript
jQuery实现点击小图片淡入淡出显示大图片特效
2015/09/09 Javascript
jQuery中animate的几种用法与注意事项
2016/12/12 Javascript
用Vue.extend构建消息提示组件的方法实例
2017/08/08 Javascript
js实现加载页面就自动触发超链接的示例
2017/08/31 Javascript
BootStrap表单验证中的非Submit类型按钮点击时触发验证的坑
2019/09/05 Javascript
vue使用require.context实现动态注册路由
2020/12/25 Vue.js
在Python中marshal对象序列化的相关知识
2015/07/01 Python
Nginx搭建HTTPS服务器和强制使用HTTPS访问的方法
2015/08/16 Python
Python2和Python3中print的用法示例总结
2017/10/25 Python
python如何制作英文字典
2019/06/25 Python
浅谈Python2之汉字编码为unicode的问题(即类似\xc3\xa4)
2019/08/12 Python
python中property和setter装饰器用法
2019/12/19 Python
Python Des加密解密如何实现软件注册码机器码
2020/01/08 Python
Python参数传递对象的引用原理解析
2020/05/22 Python
python raise的基本使用
2020/09/10 Python
CSS3实现银灰色动画效果的导航菜单代码
2015/09/01 HTML / CSS
HTML5如何实现元素拖拽
2016/03/11 HTML / CSS
西班牙国家航空官方网站:Iberia
2017/11/16 全球购物
EQVVS官网:设计师男装和女装
2018/10/24 全球购物
计算机应用职专应届生求职信
2013/11/12 职场文书
行政人员工作职责
2013/12/05 职场文书
数控机械专业个人的自我评价
2014/01/02 职场文书
会计工作心得体会
2014/01/13 职场文书
超市开学活动方案
2014/03/01 职场文书
行政部岗位职责范本
2014/03/13 职场文书
办公室主任竞聘演讲稿
2014/05/15 职场文书
行政求职信
2014/07/04 职场文书
感谢信模板大全
2015/01/23 职场文书
2015最新婚礼主持词
2015/06/30 职场文书