switch与if elseif的比较
对同一个变量的不同值作条件判断时,可以用switch语句与if语句,哪个语句执行效率更高呢,答案是switch语句,尤其是判断的分支越多越明显。 这个是用switch语句做10000次判断 a=getTimer(); b=10000; n=9; while(b>0){ switch(n){ case1: b--; break; case2: b--; break; case3: b--; break; case4: b--; break; case5: b--; break; case6: b--; break; case7: b--; break; case8: b--; break; case9: b--; break; case10: b--; break; default: b--; break; } } trace(getTimer()-a); 这个是用if语句做10000次判断 a=getTimer(); b=10000; n=9; while(b>0){ if(n==1){ b--; }elseif(n==2){ b--; }elseif(n==3){ b--; }elseif(n==4){ b--; }elseif(n==5){ b--; }elseif(n==6){ b--; }elseif(n==7){ b--; }elseif(n==8){ b--; }elseif(n==9){ b--; }elseif(n==10){ b--; }else{ b--; } } trace(getTimer()-a); switch语句的执行结果为71,if语句的结果为140,switch语句执行速度比if语句快了一倍,上面的n取值越大,分支越多,结果相差越大。