update: 6/2022

If文とSwitch文によるフロー分岐の比較です。
配列による6way 分岐を比較します。 600000回分岐判断をしています。 処理自体は足し算です。

戻る

var x = [1,2,3,4,5,6];
var y = 0;

for(let i=0 ; i<100000 ;i++){
for(let j=0 ; j<6 ;j++){

//If文
if(x[j]==1){
y = y + x[j];
}else if(x[j]==2){
y = y + x[j];
}else if(x[j]==3){
y = y + x[j];
}else if(x[j]==4){
y = y + x[j];
}else if(x[j]==5){
y = y - x[j];
}else{
y = y - x[j];
}
//

//Switch文による

switch(x[j]){
case 1:
y = y + x[j];
break;
case 2:
y = y + x[j];
break;
case 3:
y = y + x[j];
break;
case 4:
y = y + x[j];
break;
case 5:
y = y - x[j];
break;
default:
y = y - x[j];
break;
}

//結果表示
ctx.fillStyle = "white";
ctx.fillText("Result : " + y,10,100,200);


~結果表示~ [ms]単位

[速度改善=3.1%]...switch-if の比較

If文が原型のように考えていたので意外ですが、Switch文は処理上の遅れはありません。
コーディングの時にきれいに書けるというメリットもあります。
Swtich文はインデントを付けて書くので、文字量も多い気がしましたが、
スペース等を省くとこれも変わりありません。
Java Script の場合は、数字の一致・不一致などにSwitch 文は制限されているので
その分、高速化されているのかもしれません。
@tmlbworks