1、for-in循环比其他几种循环明显要慢,不要用for-in循环遍历数组成员。
2、最小化属性查找,以下方法只需要查找一次items的length属性
for(let i=0,len=items.length; i<len; i++) {
dosomthing()
}
倒序可略微提高性能(前提是不影响业务流程):
for(let i=items.length; i--;) {
dosomething()
}
3、if-else确保最可能出现的条件放在首位。
4、尽量使用迭代不使用递归,防止栈溢出。
5、尽量避免重复执行代码,使用Memoization方案将已经执行的值缓存,避免重复计算。
2、最小化属性查找,以下方法只需要查找一次items的length属性
for(let i=0,len=items.length; i<len; i++) {
dosomthing()
}
倒序可略微提高性能(前提是不影响业务流程):
for(let i=items.length; i--;) {
dosomething()
}
3、if-else确保最可能出现的条件放在首位。
4、尽量使用迭代不使用递归,防止栈溢出。
5、尽量避免重复执行代码,使用Memoization方案将已经执行的值缓存,避免重复计算。