06

08

javascript代码性能优化

网上一些文章觉得挺有用,把主要思想摘录下来。

javascript代码性能优化 by西红柿爱番茄

Javascript代码优化无非主要围绕:DOM操作、循环、闭包、对象重复出现、对象的声明方式、作用域链、字符串操作、类的声明方式等等。循环、闭包、对象重复出现是从作用域链的角度去优化的;DOM操作主要围绕HTMLCollection、NodeList等来优化;对象的声明方式主要是对象(Object)、数组(Array)、字符串(String)、函数(Function)、正则(RegExp)等内置的对象使用字面量的方式来声明,这个比使用new来实例化相应的对象在性能上要强很多;字符串操作的优化方式主要是通过数组的push和join方法;类的声明方式优化方式主要是分清属性和方法的声明的方式,方法使用prototype的方式来声明;Javascript语言本身的流程操作语句的优化(if、switch、with、eval等等)。

因此,我将Javascript代码优化主要分为六类:DOM“真空”空间、缩短作用域链、字面量声明方式、字符串操作、类声明方式、流程操作语句。



浮光掠影(第1季):高性能JavaScript实践 by一刀倾城
1. 避免Javascript加载时Block引起的阻塞
2. 尽可能的使用局部变量
3. 多使用ID选择器,少使用CSS选择器
4. 不要轻易获取布局信息
5. 使用冒泡机制减少事件绑定次数
6. 慎用定时器
7. 优化效果不明显的那些技巧
8. 推荐的性能测试工具FireJSPT
9. 推荐的网站性能优化方面的书

高效 JavaScript by我爱互联网
ECMAScript
  1. 避免使用 eval 或 Function 构造函数
    1. 重写 eval
    2. 如果你需要函数,那就用函数
  2. 避免使用 with
  3. 不要在影响性能的关键函数中使用 try-catch-finally
  4. 分隔 eval 和 with
  5. 避免使用全局变量
  6. 注意隐式对象转换
  7. 在关键函数中避免 for-in
  8. 优化 string 合并
  9. 基本运算符比函数调用更快
10. 向 setTimeout() 和 setInterval()传送函数名,而不要传送字符串

DOM
  1. 重绘和 reflow
  2. 减少 reflow 次数
  3. 最小化 reflow 影响
  4. 修改 DOM 树
  5. 修改不可见元素
  6. 测量大小
  7. 一次修改多个样式值
  8. 用流畅性换取速度
  9. 避免搜索大量节点
10. 使用 XPath 提高速度
11. 避免在遍历 DOM 时修改 DOM
12. 使用变量保存 DOM 值

页面载入
  1. 避免保存来自其他文档的引用
  2. 快速历史浏览
  3. 使用 XMLHttpRequest
  4. 动态创建 SCRIPT 元素
  5. location.replace() 控制历史项


文章来自: 本站原创
引用通告: 查看所有引用 | 我要引用此文章
Tags: JavaScript 性能优化
相关日志:
评论: 0 | 引用: 0 | 查看次数: -
发表评论
昵 称:
密 码: 游客发言不需要密码.
内 容:
验证码: 验证码
选 项:
虽然发表评论不用注册,但是为了保护您的发言权,建议您注册帐号.