--- title: default slug: conflicting/Web/JavaScript/Reference/Statements/switch tags: - JavaScript - Keyword - Palavra-chave translation_of: Web/JavaScript/Reference/Statements/switch translation_of_original: Web/JavaScript/Reference/Statements/default original_slug: Web/JavaScript/Reference/Statements/default ---
{{jsSidebar("Statements")}}

A palavra-chave default pode ser usada em duas situações no JavaScript: com uma declaração {{jsxref("Statements/switch", "switch")}}, ou com uma declaração {{jsxref("Statements/export", "export")}}.

Sintaxe

Com uma declaração {{jsxref("Statements/switch", "switch")}}:

switch (expressao) {
  case value1:
    //Declarações executadas quando o resultado da expressao for value1
    [break;]
  default:
    //Declarações executadas quando nenhum dos valores for igual o da expressao
    [break;]
}

Com a declaração {{jsxref("Statements/export", "export")}}:

export default nameN 

Descrição

Para mais detalhes, veja as páginas:

Exemplos

Usando default em declarações switch

No exemplo a seguir, se a variável expr for "Laranjas" ou "Maças", o programa encontra os valores com o case "Laranjas" ou "Maças"  e executa a declaração correspondente. A palavra-chave default vai ajudar em qualquer outro caso e executará a declaração associada.

switch (expr) {
  case 'Laranjas':
    console.log('Laranjas custam R$0,59.');
    break;
  case 'Maças':
    console.log('Maças custam R$0,32.');
    break;
  default:
    console.log('Desculpe, nós não temos ' + expr + '.');
}

Usando default com export

Se você quiser exportar apenas um valor ou precisa de um valor fallback para um módulo, uma exportação padrão (default export) pode ser usada:

// module "my-module.js"
let cube = function cube(x) {
  return x * x * x;
};
export default cube;

Então, no outro script, isso pode ser passado direto para o import do default export:

// module "my-module.js"
import myFunction from 'my-module';
console.log(myFunction(3)); // 27

Especificações

Especificação Situação Comentário
{{SpecName('ES6', '#sec-switch-statement', 'switch statement')}} {{Spec2('ES6')}}  
{{SpecName('ES6', '#sec-exports', 'Exports')}} {{Spec2('ES6')}}  
{{SpecName('ESDraft', '#sec-switch-statement', 'switch statement')}} {{Spec2('ESDraft')}}  
{{SpecName('ESDraft', '#sec-exports', 'Exports')}} {{Spec2('ESDraft')}}  

Compatibilidade de navegadores

{{CompatibilityTable}}

Feature Chrome Edge Firefox (Gecko) Internet Explorer Opera Safari
Switch default {{CompatVersionUnknown}} {{CompatVersionUnknown}} {{CompatVersionUnknown}} {{CompatVersionUnknown}} {{CompatVersionUnknown}} {{CompatVersionUnknown}}
Export default {{CompatNo}} {{CompatUnknown}} {{CompatNo}} {{CompatNo}} {{CompatNo}} {{CompatNo}}
Feature Android Chrome for Android Edge Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Switch default {{CompatVersionUnknown}} {{CompatVersionUnknown}} {{CompatVersionUnknown}} {{CompatVersionUnknown}} {{CompatVersionUnknown}} {{CompatVersionUnknown}} {{CompatVersionUnknown}}
Export default {{CompatNo}} {{CompatNo}} {{CompatUnknown}} {{CompatNo}} {{CompatNo}} {{CompatNo}} {{CompatNo}}

Veja também