Clique sobre os tópicos listados abaixo para navegar até o conteúdo desejado.

  1. Comando switch
  2. Switch com múltiplos cases
  3. Switch com string
  4. Switch com objeto
  5. switch com "enum"
  6. switch com range
  7. switch com expressões

Para fazermos escolhas em TS, usamos o comando switch que irá comparar um valor a um grupo de casos e executar um trecho para um caso específico quanto o retorno da comparação for true.

Os comandos de escolha-caso bem como o seu funcionamento já foi discutido em Portugol: Comando de Escolha sendo a leitura recomendada.

A condição mostrada nas sintaxes abaixo podem ser compostas de uma ou mais condições utilizando os operadores relacionais e lógicos visto em JavaScript Básico: Operadores.

Para fazermos escolhas na linguagem TS, utilizamos o comando switch que possui sua sintaxe e fluxograma apresentados abaixo. O comando switch utiliza o comando break como parte de sua sintaxe.

Fig. 1: Fluxograma Comando switch
Sintaxe
switch(valor)
{
    case caso1: 
	        //código
    break;
    case caso2: 
	        //código
    break;
    default:
	        //código
    break;
}

Quando o switch é executado, o valor é comparado sequencialmente a todos os valores contidos nas cláusulas case até que a comparação seja verdadeira e o trecho de código é executado.

O case default é executado caso nenhum case testado seja verdadeiro. O uso do case default não é obrigatório, mas por boas práticas deve ser usado para verificação de erros.

Exemplo 1
let valor = 1;
switch(valor)
{
    case 1: console.log(1); break;
    case 3: console.log(2); break;
    default: console.log("invalido"); break;
}
Saída
1

Para a execução de um mesmo trecho de código para mais de uma caso, basta adicionar as cláusulas case em sequência ou um abaixo do outra separadas por (:).

Exemplo 6
let valor = 1;
switch(valor)
{
    case 1: 
    case 3: console.log(2); break;
    default: console.log("invalido"); break;
}
Saída
2

O comando switch pode também ser utilizando com o tipo de dado string como valores de comparação contidos nos cases:

Exemplo 2
let valor = "str2";
switch(valor)
{
    case "str1": console.log(valor); break;
    case 'str2': console.log(valor); break;
    default: console.log("invalido"); break;
}
Saída
str2

Não há um tipo de dado char na linguagem TS. Sendo assim, uma string de um caracter pode ser utilizada nos cases do switch.

O comando switch pode também ser utilizando com o tipo de dado objeto, contanto que o atributo utilizado pelo comando seja do tipo numérico ou string como no exemplo abaixo:

Exemplo 3
let obj = { campo: 2 , desc: "string"};

switch(obj.campo)
{
    case 1: console.log(obj.campo); break;
    case 2: console.log(obj.desc); break;
    default: console.log("invalido"); break;
}
Saída
string
  1. 27/08/2025 - versão inicial