Durante la creazione di JavaScript con ASP.NET MVC ho notato diversi avvisi di ambito e mi sono reso conto che mi manca qualcosa con la comprensione dell'ambito della variabile all'interno dell'istruzione switch/case.Qual è l'ambito della variabile JavaScript in un'istruzione switch/case?
Attenzione: 'i' è già definito riferendosi al caso B e C
Il mio codice è simile a questo:
switch(element) {
case 'a':
for(var i=0; i < count; i++){
do something
}
break;
case 'b':
for(var i=0; i < count; i++){
do something
}
break;
case 'c':
for(var i=0; i < count; i++){
do something
}
break;
}
ho pensato ambito si è conclusa con l'istruzione break ma sembra quell'ambito non termina fino alla fine del passaggio/caso. È l'ambito dell'intero switch/caso?
Sì. Devo addormentarmi su questo perché a prima vista sembrava giusto. Ma la gioia per gli avvertimenti del compilatore di farmi sapere quando mi sono addormentato. Grazie per una risposta così grande. –
Si noti che nelle lingue simili a C (non Javascript) è possibile creare un ambito dopo il caso se si desidera: 'caso 1: {...} ' – hugomg
FYI, al giorno d'oggi la sintassi ES6 consente l'esplorazione dei blocchi, quindi sarebbe possibile creare un ambito dopo l'altro –