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 相关文章推荐
jquery实现图片按比例缩放示例
Jul 01 Javascript
三种取消选中单选框radio的方法
Sep 09 Javascript
图文详解Heap Sort堆排序算法及JavaScript的代码实现
May 04 Javascript
jQuery常见的选择器及用法介绍
Dec 20 Javascript
详解Javascript百度地图接口开发文档中的类和方法
Feb 07 Javascript
分分钟玩转Vue.js组件(二)
Mar 01 Javascript
详解基于Angular4+ server render(服务端渲染)开发教程
Aug 28 Javascript
javascript将list转换成树状结构的实例
Sep 08 Javascript
对Vue- 动态元素属性及v-bind和v-model的区别详解
Aug 27 Javascript
vue用BMap百度地图实现即时搜索功能
Sep 26 Javascript
如何在wxml中直接写js代码(wxs)
Nov 14 Javascript
Vue实现附件上传功能
May 28 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下使用以下代码连接并测试
2008/04/09 PHP
php下连接ftp实现文件的上传、下载、删除文件实例代码
2010/06/03 PHP
php生成年月日下载列表的方法
2015/04/24 PHP
php计算税后工资的方法
2015/07/28 PHP
使用PHP json_decode可能遇到的坑与解决方法
2017/08/03 PHP
javascript英文日期(有时间)选择器
2007/05/02 Javascript
json跟xml的对比分析
2008/06/10 Javascript
JavaScript中判断函数是new还是()调用的区别说明
2011/04/07 Javascript
jQuery使用正则表达式限制文本框只能输入数字
2016/06/18 Javascript
AngularJS动态生成div的ID源码解析
2016/08/29 Javascript
Angular中管道操作符(|)的使用方法
2017/12/15 Javascript
vue裁切预览组件功能的实现步骤
2018/05/04 Javascript
vue中使用echarts制作圆环图的实例代码
2018/07/27 Javascript
解决vue-cli webpack打包后加载资源的路径问题
2018/09/25 Javascript
支付宝小程序tabbar底部导航
2018/11/06 Javascript
vue使用pdfjs显示PDF可复制的实现方法
2018/12/14 Javascript
怎样使你的 JavaScript 代码简单易读(推荐)
2019/04/16 Javascript
nodejs中request库使用HTTPS代理的方法
2019/04/30 NodeJs
vue+Element-ui前端实现分页效果
2020/11/15 Javascript
Python最基本的数据类型以及对元组的介绍
2015/04/14 Python
python 通过字符串调用对象属性或方法的实例讲解
2018/04/21 Python
使用Python实现 学生学籍管理系统
2019/11/26 Python
python对XML文件的操作实现代码
2020/03/27 Python
安装pyecharts1.8.0版本后导入pyecharts模块绘图时报错: “所有图表类型将在 v1.9.0 版本开始强制使用 ChartItem 进行数据项配置 ”的解决方法
2020/08/18 Python
python3环境搭建过程(利用Anaconda+pycharm)完整版
2020/08/19 Python
彼得罗夫美国官网:Peter Thomas Roth美国(青瓜面膜)
2017/11/05 全球购物
COS美国官网:知名服装品牌
2019/04/08 全球购物
介绍一下XMLHttpRequest对象的常用方法和属性
2013/05/24 面试题
爷爷追悼会答谢词
2014/01/24 职场文书
《搭石》教学反思
2014/04/07 职场文书
《水乡歌》教学反思
2014/04/24 职场文书
商业用房租赁协议书
2014/10/13 职场文书
导游词之云南省玉龙雪山
2019/12/19 职场文书
十大最强水系宝可梦,最美宝可梦排第三,榜首大家最熟悉
2022/03/18 日漫
漫画「请问您今天要来点兔子吗?」最新杂志彩页公开
2022/03/24 日漫
《极主夫道》真人电影正式预告 定档6月3日上映
2022/04/05 日漫