DÊVIDAS COM LÓGICA DA ESTRUTURA SWITCH
Olá a todos!
Pessoal, alguém poderia me explicar o porquê que este código em javascript em vez de simplesmente finalizar por não ter nada a fazer no case JAVA ele faz o contrário vai para a case [Ô]C#[Ô]?
var tecnologia = [Ô]java[Ô];
switch(tecnologia){
case [Ô]java[Ô]:
case [Ô]c++[Ô]:
case [Ô]javascript[Ô]:
case [Ô]c#[Ô]:
alert([Ô]linguagem de programação[Ô]);
break;
case [Ô]sqlserver[Ô]:
case [Ô]postgresql[Ô]:
case [Ô]oracle[Ô]:
alert([Ô]banco de dados[Ô]);
break;
default:
alert([Ô]tecnologia não conhecida[Ô]);
}
Pessoal, alguém poderia me explicar o porquê que este código em javascript em vez de simplesmente finalizar por não ter nada a fazer no case JAVA ele faz o contrário vai para a case [Ô]C#[Ô]?
var tecnologia = [Ô]java[Ô];
switch(tecnologia){
case [Ô]java[Ô]:
case [Ô]c++[Ô]:
case [Ô]javascript[Ô]:
case [Ô]c#[Ô]:
alert([Ô]linguagem de programação[Ô]);
break;
case [Ô]sqlserver[Ô]:
case [Ô]postgresql[Ô]:
case [Ô]oracle[Ô]:
alert([Ô]banco de dados[Ô]);
break;
default:
alert([Ô]tecnologia não conhecida[Ô]);
}
Não tenho certeza, mas acho que terá que colocar um break em cada case.
exemplo:
switch (new Date().getDay()) {
case 0:
day = [Ô]Sunday[Ô];
break;
case 1:
day = [Ô]Monday[Ô];
break;
case 2:
day = [Ô]Tuesday[Ô];
break;
case 3:
day = [Ô]Wednesday[Ô];
break;
case 4:
day = [Ô]Thursday[Ô];
break;
case 5:
day = [Ô]Friday[Ô];
break;
case 6:
day = [Ô]Saturday[Ô];
break;
exemplo:
switch (new Date().getDay()) {
case 0:
day = [Ô]Sunday[Ô];
break;
case 1:
day = [Ô]Monday[Ô];
break;
case 2:
day = [Ô]Tuesday[Ô];
break;
case 3:
day = [Ô]Wednesday[Ô];
break;
case 4:
day = [Ô]Thursday[Ô];
break;
case 5:
day = [Ô]Friday[Ô];
break;
case 6:
day = [Ô]Saturday[Ô];
break;
Quando o swich possui como no seu exemplo abaixo
switch(tecnologia){
case [Ô]java[Ô]:
case [Ô]c++[Ô]:
case [Ô]javascript[Ô]:
case [Ô]c#[Ô]:
alert([Ô]linguagem de programação[Ô]);
break;
é o mesmo que dizer, caso a variavel tecnologia seja java, ou c++, ou javascript ou C#, por isso que termina no alert([Ô]linguagem de programação[Ô]) e para ali por causa do break. Se quiser isolar cada caso terá que colocar o break em cada um dos casos, conforme o Jaba explicou.
Abraços
switch(tecnologia){
case [Ô]java[Ô]:
case [Ô]c++[Ô]:
case [Ô]javascript[Ô]:
case [Ô]c#[Ô]:
alert([Ô]linguagem de programação[Ô]);
break;
é o mesmo que dizer, caso a variavel tecnologia seja java, ou c++, ou javascript ou C#, por isso que termina no alert([Ô]linguagem de programação[Ô]) e para ali por causa do break. Se quiser isolar cada caso terá que colocar o break em cada um dos casos, conforme o Jaba explicou.
Abraços
Obrigada pessoal pelas explicações, deu para entender o problema!
Tópico encerrado , respostas não são mais permitidas