Estrutura SWITCH
Utilizada para tomar decisões em função de distintos estados das variáveis.
É a outra opção disponível em Javascript para tomar decisões em função de distintos estados das variáveis. Esta expressão se utiliza quando temos múltiplas possibilidades como resultado da avaliação de uma sentença.
A estrutura SWITCH se incorporou a partir da versão 1.2 de Javascript (Netscape 4 e Internet Explorer 4). Sua sintaxe é a seguinte:
switch (expressão) {A expressão se avalia, se vale valor1 se executam as sentenças relacionadas com esse caso. Se a expressão vale valor2 se executam as instruções relacionadas com esse valor e assim, sucessivamente, por tantas opções como desejarmos. Finalmente, para todos os casos não contemplados anteriormente se executa o caso por padrão.
case valor1:
Sentenças a executar se a expressão tem como valor a valor1
break
case valor2:
Sentenças a executar se a expressão tem como valor a valor2
break
case valor3:
Sentenças a executar se a expressão tem como valor a valor3
break
default:
Sentenças a executar se o valor não é nenhum dos anteriores
}
A palavra break é opcional, mas se não a colocamos a partir de que se encontre coincidência com um valor se executarão todas as sentenças relacionadas com este e todas as seguintes. Ou seja, se em nosso esquema anterior não tivesse nenhuma expressão que valesse valor1, se executariam sentenças relacionadas com valor1 e também as relacionadas com valor2, valor3 e default.
Também é opcional a opção default ou opção por padrão.
Vejamos um exemplo de uso desta estrutura. Suponhamos que queremos indicar que dia da semana é. Se o dia é 1 (segunda-feira) colocamos uma mensagem indicando, se o dia é 2 (terça) devemos colocar uma mensagem diferente e assim, sucessivamente para cada dia da semana, menos no 6 (sábado) e 7 (domingo) que queremos mostrar a mensagem "é fim de semana". Para dias maiores que 7 indicaremos que esse dia não existe.
Switch (dia_da_semana) {O exemplo é relativamente simples, somente pode ter uma pequena dificuldade, consistente em interpretar o que passa no caso 6 e 7, que havíamos dito que tínhamos que mostrar a mesma mensagem. No caso 6 na verdade não indicamos nenhuma instrução, mas como tampouco colocamos um break se executará a sentença ou sentenças do caso seguinte, que correspondem com a sentença indicada no caso 7 que é a mensagem que informa que é fim de semana. Se o caso é 7 simplesmente se indica que é fim de semana, tal como se pretendia.
case 1:
document.write("É segunda-feira")
break
case 2:
document.write("É terça-feira")
break
case 3:
document.write("É quarta-feira")
break
case 4:
document.write("É quinta-feira")
break
case 5:
document.write("É sexta-feira ")
break
case 6:
case 7:
document.write("É fim de semana")
break
default:
document.write("Esse dia não existe")
}