JavaScript代码性能优化总结(推荐)


Posted in Javascript onMay 16, 2016

下面是我总结的一些小技巧,仅供参考。

以下代码基本上在jQuery的源码里面都可以看到,如有说得不对的地方,请大家指出。

尽量使用源生方法

javaScript是解释性语言,相比编译性语言执行速度要慢。浏览器已经实现的方法,就不要再去实现一遍了。另外,浏览器已经实现的方法在算法方面已经做了很多优化。

避免全局查找

在一个函数中会用到全局对象存储为局部变量来减少全局查找,因为访问局部变量的速度要比访问全局变量的速度更快些。

JavaScript代码性能优化总结(推荐)

尽量减少循环次数

少一层循环,就能提高数倍性能。如果要对一个数组的每个元素进行多次操作,尽可能使用一次循环,多次操作,而不是多次循环,每次循环执行一次操作。尤其是在进行多个正则匹配的时候,尽可能合并正则表达式,在一次遍历中尽可能找到相应的匹配。

循环

JavaScript代码性能优化总结(推荐)

switch

JavaScript代码性能优化总结(推荐)

条件分支

将条件分支,按可能性顺序从高到低排列:可以减少解释器对条件的探测次数。

在同一条件 >2条件分支时,使用switch优于if:switch分支选择的效率高于if,在IE下尤为明显。4条分支的测试,IE下switch的执行时间约为if的一半。

使用三目运算符替代条件分支。

JavaScript代码性能优化总结(推荐)

定时器

如果针对的是不断运行的代码,不应该使用setTimeout,而应该是用setInterval,因为setTimeout每一次都会初始化一个定时器,而setInterval只会在开始的时候初始化一个定时器。JavaScript代码性能优化总结(推荐)

创建对象的另外一个办法-不使用new

JavaScript代码性能优化总结(推荐)

用做标记的变量尽可能使用布尔类型

直接用true和false做标记,不要使用数字或者字符串的1和0来做标记。

以上这篇JavaScript代码性能优化总结(推荐)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
js 无提示关闭浏览器页面的代码
Mar 09 Javascript
JS创建自定义表格具体实现
Feb 11 Javascript
javascript结合ajax读取txt文件内容
Dec 05 Javascript
jQuery中:only-child选择器用法实例
Jan 03 Javascript
JS实现表格数据各种搜索功能的方法
Mar 03 Javascript
jquery使用animate方法实现控制元素移动
Mar 27 Javascript
JS获取iframe中marginHeight和marginWidth属性的方法
Apr 01 Javascript
基于jQuery实现点击最后一行实现行自增效果的表格
Jan 12 Javascript
js 定位到某个锚点的方法
Nov 19 Javascript
vue-cli配置flexible过程详解
Jul 04 Javascript
Vue实现简单计算器案例
Feb 25 Javascript
vue路由跳转传递参数的方式总结
May 10 Javascript
AngularJS学习笔记之依赖注入详解
May 16 #Javascript
javascript表单事件处理方法详解
May 15 #Javascript
基于jquery实现ajax无刷新评论
Aug 19 #Javascript
JavaScript代码性能优化总结篇
May 15 #Javascript
window.onload绑定多个事件的两种解决方案
May 15 #Javascript
js仿淘宝和百度文库的评分功能
May 15 #Javascript
RequireJS使用注意细节
May 15 #Javascript
You might like
php实现12306火车票余票查询和价格查询(12306火车票查询)
2014/01/14 PHP
PHP面向对象程序设计重载(overloading)操作详解
2019/06/13 PHP
JavaScript类属性的访问方式详解
2014/02/11 Javascript
javascript中Number对象的toString()方法分析
2014/12/20 Javascript
javascript面向对象程序设计(一)
2015/01/29 Javascript
全面解析Bootstrap排版使用方法(标题)
2015/11/30 Javascript
微信小程序实现选项卡功能
2020/06/19 Javascript
VueJs 搭建Axios接口请求工具
2017/11/20 Javascript
Vue单页应用引用单独的样式文件的两种方式
2018/03/30 Javascript
jQuery实现的简单日历组件定义与用法示例
2018/12/24 jQuery
微信小程序在ios下Echarts图表不能滑动的问题解决
2019/07/10 Javascript
js回溯法计算最佳旅行线路代码实例
2019/09/11 Javascript
vue项目中微信登录的实现操作
2020/09/08 Javascript
js动态添加带圆圈序号列表的实例代码
2021/02/18 Javascript
python实现爬虫下载漫画示例
2014/02/16 Python
Python装饰器decorator用法实例
2014/11/10 Python
Python文件和流(实例讲解)
2017/09/12 Python
python逐行读写txt文件的实例讲解
2018/04/03 Python
DataFrame中的object转换成float的方法
2018/04/10 Python
用python实现刷点击率的示例代码
2019/02/21 Python
python 爬虫如何实现百度翻译
2020/11/16 Python
详解如何使用rem或viewport进行移动端适配
2020/08/14 HTML / CSS
美国时尚孕妇装品牌:A Pea in the Pod
2017/07/16 全球购物
铭宣海淘转运:美国、日本、英国转运等全球转运公司
2019/09/10 全球购物
德国在线购买葡萄酒网站:Geile Weine
2019/09/24 全球购物
weblogic面试题
2016/03/07 面试题
新闻专业推荐信范文
2013/11/20 职场文书
应用英语专业自荐信
2014/01/26 职场文书
小学母亲节活动方案
2014/03/14 职场文书
年度考核自我鉴定
2014/03/19 职场文书
销售团队获奖感言
2014/08/14 职场文书
关于清明节的演讲稿
2014/09/13 职场文书
党员组织生活会发言材料
2014/10/17 职场文书
幼儿园教师工作总结2015
2015/04/02 职场文书
婚礼双方父亲致辞
2015/07/27 职场文书
企业内部管理控制:银行存款控制制度范本
2020/01/10 职场文书