logo javascript

Aprenda javascript com facilidade do zero

Prof. Ivan Lourenço Gomes

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.

Índice de Aulas