第一章 加载和运行
1 将所有<script>标签尽可能放在接近</body>标签底部的位置,减少对整个页面下载的影响。
2 减少页面的script数,打包。
3 对于页面所包含的脚本不修改dom,可以defer延期执行。
4 需要在页面加载过程中执行的js和页面加载后(DOMContentLoaded)执行的js。
第二章 数据访问
1 全局变量在运行期上下文作用链的最后一个位置,总是最远触及。
2 location.href快于window.location.href。
3 多次引用的全局变量存储起来,减少多次搜索。
第三章 DOM编程
1 dom访问和修改:最小化 DOM 访问,在 JavaScript 端做尽可能多的事情。在反复访问的地方使用局部变量存放 DOM 引用。
2 使用事件托管技术最小化事件句柄数量。
第四章 算法和流程控制
1 for in循环比其他循环明显要慢。
2 优化的for循环
for (var i=5; i--; ){ console.log(i+'-'); }
3 if 最简单的优化方法是将最常见的条件体放在首位。if-else 中的条件体应当总是按照从最大概率到最小概率的顺序排列,以保证理论运行速度最快。
第五章 字符串和正则表达式
一个单一的 JavaScript 操作应当使用的总时间 (最大) 是 100 毫秒。