在Node.JS中切换vs if-else分支控制结构

当Node.JS程序中有大量的分支stream时,哪一个好用。

开关

switch(n) { case 1: execute code block 1 break; case 2: execute code block 2 break; default: code to be executed if n is different from case 1 and 2 } 

要么
如果别的

 if (condition1) { execute code block 1 } else if(condition2) { execute code block 2 } else { code to be executed if n is different from condition1 and condition2 } 

只有几个项目,差异很小。 如果你有很多项目,你一定要使用一个开关。 它比if-else提供更好的性能。

如果交换机包含五个以上的项目,则使用查找表或哈希列表来实现。 这意味着所有项目获得相同的访问时间,而if-else列表中的最后一个项目需要更多的时间才能达到,因为它必须首先评估每个先前的条件。

 switch(n) { case 1,3,4: execute code block 1 break; case 2,5,9,10: execute code block 2 break; default: code to be executed if n is different from first 2 cases. } 

要记下上述情况下的if … else if … else步骤,必须在语句Where as switch中写入'OR(||)'条件语句并重复variables'n'案件可以用逗号分隔。 因此,对于这种情况,交换机更具可读性。