13 个JavaScript 性能提升技巧分享


Posted in Javascript onJuly 26, 2012

Daniel Clifford 在 Google I/O 2012 上做了一个精彩的演讲“Breaking the JavaScript Speed Limit
with V8”。在演讲中,他深入解释了13个简单的代码优化方法,可以让你的代码在 Chrome 的 V8 JavaScript 引擎编译/运行你的 JavaScript 代码更加快速。在演讲中,他解释了怎么优化,并且解释了原因。下面简明的列出了优化的要点:

1. 在构造函数中初始化所有的对象

2. 始终用相同的顺序初始化对象

3. 尽量使用数字

4. 为数组使用从0开始的连续的主键

5. 不要提前分配大型数组(>64K),你应该在使用的过程中扩大数组

6. 不要删除数组中的元素

7. 不要装在没有初始化或者已经删除的元素

8. 对于固定大小的数组,使用”array literals“初始化

9. 在使用前分配正确的空间大小给小数组

10. 不要在数值数组中存储非数值内容

11. 尽量使用单一类型(monomorphic)而不是多类型(polymorphic)

12. 不要使用 try{} catch{}

13. 在优化后避免在方法中修隐藏的类

Javascript 相关文章推荐
javascript concat数组累加 示例
Sep 03 Javascript
理解Javascript_11_constructor实现原理
Oct 18 Javascript
jquery异步请求实例代码
Jun 21 Javascript
JS模拟自动点击的简单实例
Aug 08 Javascript
js判断undefined类型示例代码
Feb 10 Javascript
使用JavaScript的ActiveXObject对象检测应用程序是否安装的方法
Apr 15 Javascript
jquery动态改变div宽度和高度
Feb 09 Javascript
js钢琴按钮波浪式图片排列效果代码分享
Aug 26 Javascript
vue货币过滤器的实现方法
Apr 01 Javascript
jQuery实现简单的Ajax调用功能示例
Feb 15 jQuery
通过实践编写优雅的JavaScript代码
May 30 Javascript
Angular CLI发布路径的配置项浅析
Mar 29 Javascript
了解一点js的Eval函数
Jul 26 #Javascript
基于jquery实现的一个选择中国大学的弹框 (数据、步骤、代码)
Jul 26 #Javascript
javascript小组件 原生table排序表格脚本(兼容ie firefox opera chrome)
Jul 25 #Javascript
浅谈javascript的原型继承
Jul 25 #Javascript
基于jquery的多功能软键盘插件
Jul 25 #Javascript
基于jQuery判断两个元素是否有重叠部分的代码
Jul 25 #Javascript
JavaScript中的apply()方法和call()方法使用介绍
Jul 25 #Javascript
You might like
多php服务器实现多session并发运行
2006/10/09 PHP
新手学习PHP的一些基础知识分享
2011/07/27 PHP
php操作redis中的hash和zset类型数据的方法和代码例子
2014/07/05 PHP
PHP通过CURL实现定时任务的图片抓取功能示例
2016/10/03 PHP
laravel框架分组控制器和分组路由实现方法示例
2020/01/25 PHP
hover的用法及live的用法介绍(鼠标悬停效果)
2013/03/29 Javascript
jQuery如何取id有.的值一般的方法是取不到的
2014/04/18 Javascript
我用的一些Node.js开发工具、开发包、框架等总结
2014/09/25 Javascript
Javascript 构造函数详解
2014/10/22 Javascript
Angular 根据 service 的状态更新 directive
2016/04/03 Javascript
设置jQueryUI DatePicker默认语言为中文
2016/06/04 Javascript
JS代码实现根据时间变换页面背景效果
2016/06/16 Javascript
Vuejs实现购物车功能
2017/11/05 Javascript
微信小程序实现发红包功能
2018/07/11 Javascript
JS/HTML5游戏常用算法之碰撞检测 地图格子算法实例详解
2018/12/12 Javascript
Django模板继承 extend标签实例代码详解
2019/05/16 Javascript
关于element-ui的隐藏组件el-scrollbar的使用
2019/05/29 Javascript
JavaScript 实现同时选取多个时间段的方法
2019/10/17 Javascript
前端vue如何使用高德地图
2020/11/05 Javascript
在SAE上部署Python的Django框架的一些问题汇总
2015/05/30 Python
Django获取该数据的上一条和下一条方法
2019/08/12 Python
django连接oracle时setting 配置方法
2019/08/29 Python
Python统计学一数据的概括性度量详解
2020/03/03 Python
如何在python中实现线性回归
2020/08/10 Python
Python调用ffmpeg开源视频处理库,批量处理视频
2020/11/16 Python
html5摇一摇代码优化包括DeviceMotionEvent等等
2014/09/01 HTML / CSS
英国马匹装备和马术用品购物网站:Equine Superstore
2019/03/03 全球购物
如何填写个人简历自我评价
2013/12/10 职场文书
关于是否需要写商业计划书
2014/02/07 职场文书
荷叶母亲教学反思
2014/04/30 职场文书
市场营销工作计划书
2014/05/06 职场文书
教育专业毕业生推荐信
2014/07/10 职场文书
大学生推广普通话演讲稿
2014/09/21 职场文书
公司岗位说明书
2015/10/08 职场文书
Apache Calcite 实现方言转换的代码
2021/04/24 Servers
基于Pygame实现简单的贪吃蛇游戏
2021/12/06 Python