Vraag switch vs if-else branching control structure in Node.JS


Welke is goed te gebruiken wanneer er een groot aantal vertakkingsstromen is in het Node.JS-programma.

schakelaar

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
}

OF
if-else

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
  } 

14
2018-04-05 10:29


oorsprong


antwoorden:


Voor slechts een paar items is het verschil klein. Als je veel items hebt, moet je zeker een schakelaar gebruiken. Het geeft betere prestaties dan if-else.

Als een switch meer dan vijf items bevat, wordt deze geïmplementeerd met behulp van een opzoektabel of hash-lijst. Dit betekent dat alle items dezelfde toegangstijd krijgen, vergeleken met een lijst met if-else waarbij het laatste item veel meer tijd kost om te bereiken, omdat het eerst alle voorgaande voorwaarden moet evalueren ..


16
2018-04-05 11:01



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.
}

Om de if ... else if ... else-stappen voor de bovenstaande case op te schrijven, moet u de 'OR (||)' condition-statement schrijven en de variabele 'n' in de instructie herhalen, waarbij als switch gevallen kunnen worden gescheiden door slechts een komma ','. Schakelen is dus beter leesbaar in zo'n geval.


7
2018-03-07 13:39