1、JS有for 、while、do while、for in .四种循环方式,最后一种for in 因为会遍历对象的每一个属性,所以比前三种会慢一些。应避免使用for in 循环
2、forEach 会产生更多的调用,效率会更低一些。
3、使用循环时,可以使用局部变量缓存总数,从而节省JS获取对象信息的开销
for(var i=0,len=item.length;i<len;i++){
}
var i=0,
len=item.length;
while(i<len){
}
do{
}while(i<len)
4、如果倒序循环不影响业务实现,建议采用倒序循环,能进一步减少比较次数
for(var i=item.length;i--;){
}
var i=item.length
while(i){
}
do{
}while(i)
5、switch 比 if else要快一些,当判断分支条件比较多时,应进行使用switch ,既可以提升效率,也方便阅读
6、如果判断的条件值是一系列的数字,可以通过二分法来减少平均比较次数
if(num<4){
switch(num){
case 1:
break;
case 2:
break;
case 3:
break;
default:
break;
}
}
else{
switch(num){
case 4:
break;
case 5:
break;
case 6:
break;
default:
break;
}
}
7、如果判断的值是少量的几个数字,可以通过数组来返回结果,这样的效率比switch 、 if else 都快
var results=[result0,result1,result2,result3];
return results[index]