Switch
O comando Switch é também uma estrutura condicional. Ele é muito útil para rodar um bloco de código caso encontre um valor específico. Vamos usar como exemplo uma tabela de valores de pedágio por tipo de veículo.
Categoria de veículo | Tipo veículo | Número de eixos | Valor |
---|---|---|---|
1 | Automóvel, caminhonete e furgão | 2 | R$ 11,22 |
2 | Caminhão leve, ônibus, e furgão | 2 | R$ 22,45 |
3 | Automóvel e caminhonete com semi-reboque | 3 | R$ 16,88 |
4 | Caminhão com semireboque e ônibus | 3 | R$ 33,65 |
Se quisermos receber a categoria do veículo e informar o preço a pagar, é fácil fazer isso usando a estrutura do comando switch.
var categoria = '2';
switch (categoria) {
case '1':
console.log("Valor a pagar: R$ 11,22");
break;
case '2':
console.log("Valor a pagar: R$ 22,45");
break;
case '3':
console.log("Valor a pagar: R$ 16,88");
break;
case '4':
console.log("Valor a pagar: R$ 33,65");
break;
default:
console.log("Categoria não encontrada");
}
Dentro dos parênteses do comando switch, passamos um valor ou uma variável. Depois criamos vários 'cases' com valores específicos. Se o valor passado for igual ao valor do case, o bloco de código é executado.
Caso o valor não corresponda a nenhum dos cases, podemos usar o case default para executar algum código, neste exemplo utilizamos para soltar "Categoria não encontrada".
o comando break é utilizado para interromper o fluxo do switch, falaremos mais sobre este comando na próxima aula e veremos o seu uso também em loops juntamente com o comando continue. Neste exemplo, quando sabemos que ele encontrou o valor, depois de soltar o preço a pagar, não há mais necessidade de testar os outros cases, portanto podemos usar o break para interromper o fluxo do comando switch, melhorando assim a performance do nosso código.