其实主要是性能小技巧。
循环优化
循环体是执行最多的,所以要确保其被最大限度的优化.
|
|
避免 for-in 循环
for(in)的效率极差,因为它需要查询散列键,只要可以,就应该尽量少用
多个类型一起声明
|
|
类型转换
|
|
使用三目运算符替代条件分支
|
|
巧用||和&&布尔运算符
|
|
用局部变量代替全局变量
无论是DOM节点,普通变量,还是对象属性,若需重复使用,通通存成局部变量,避免多次取值的调用开销
DOM节点链式操作
|
|
修改CSS类,而不是样式
|
|
插入迭代器
|
|
使用字面量
|
|
使用一次innerHTML赋值代替构建dom元素
|
|
尽量使用原生方法
|
|
避免with语句
with语句会创建自己的作用域,因此会增加其中执行的代码的作用域链的长度,所以能不用的时候就不要用。
ps:有些代码性能虽高,但是可能会降低阅读性与可维护性,或者与团队的规范冲突,所以这个需要自己在可读性,团队规范性与代码性能之间权衡。
感言
上面罗列的都是我觉得经常会用到的,看一遍,用心记一下,很easy~~可能以后会不定时更新,看自己get到的情况~~
我也是最近才注意到这些“潜规则”,正巧最近也在看vue的源码,然后就发现:基本上网上能查到的性能优化的方面,或者编程的技巧都能在vue源码中找到佐证。vue源码的代码质量很高,非常值得我等小辈学习。
上面的技巧,若有任何不对,欢迎指正,也欢迎补充~~
过段时间一定要写源码阅读笔记(好怕打脸~~逃)