1.使用索引代替数组遍历
数组遍历方法,查找用户信息
索引方法,查找用户信息(推荐)
2.使用Array.prototype.join方法代替字符串拼接
字符串拼接方法
join方法(推荐)
注:是不是以后字符串拼接就一律使用数组join呢?这个要看你的实际需求了,就普通的几个或者K级的字节的组合就没有必要使用数组法了,因为开数组变量也是有消耗的。若有几K以上的字符串组合,那就是数组的效率高了。
3.在繁重的执行上使用Web Workers
定义: web worker是运行在后台的JavaScript,独立于其他脚本,不会影响页面的性能。您可以继续做任何愿意做的事情:点击、选取内容等等,而此时 web worker在后台运行。
web worker 实例:
worker.js
4.事件委托
背景:如果你有一个无序列表,里面有一堆<li>
,每一个<li>
点击都能触发某种行为。此时,你通常会在每个<li>
元素上添加一个事件监听,但是如果你添加监听的这个对象会被频繁的移除添加呢?你不得不在移除添加元素的同时需要处理事件监听的移除和添加。这个时候,我们就需要引入事件委托了。
定义:事件委托是在父级元素上添加一个事件监听,来替代在每一个子元素上添加事件监听。当事件被触发时,event.target会评估相应的措施是否需要被执行。
事件委托是在父级元素上添加一个事件监听,来替代在每一个子元素上添加事件监听。当事件被触发时,event.target会评估相应的措施是否需要被执行。