--- title: default slug: Web/JavaScript/Reference/Statements/default tags: - JavaScript - Keyword - Palavra-chave translation_of: Web/JavaScript/Reference/Statements/switch translation_of_original: Web/JavaScript/Reference/Statements/default ---
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")}}.
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
Para mais detalhes, veja as páginas:
default em declarações switchNo 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 + '.');
}
default com exportSe 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çã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')}} |
{{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}} |