MDN wants to learn about developers like you: https://qsurvey.mozilla.com/s3/d6d7ff2e2f9c

A palavra-chave default pode ser usada em duas situações no JavaScript: com uma declaração switch, ou com uma declaração export.

Sintaxe

Com uma declaração 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 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
ECMAScript 2015 (6th Edition, ECMA-262)
The definition of 'switch statement' in that specification.
Padrão  
ECMAScript 2015 (6th Edition, ECMA-262)
The definition of 'Exports' in that specification.
Padrão  
ECMAScript Latest Draft (ECMA-262)
The definition of 'switch statement' in that specification.
Padrão em tempo real  
ECMAScript Latest Draft (ECMA-262)
The definition of 'Exports' in that specification.
Padrão em tempo real  

Compatibilidade de navegadores

Feature Chrome Edge Firefox (Gecko) Internet Explorer Opera Safari
Switch default (Yes) (Yes) (Yes) (Yes) (Yes) (Yes)
Export default Não suportado ? Não suportado Não suportado Não suportado Não suportado
Feature Android Chrome for Android Edge Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Switch default (Yes) (Yes) (Yes) (Yes) (Yes) (Yes) (Yes)
Export default Não suportado Não suportado ? Não suportado Não suportado Não suportado Não suportado

Veja também

Etiquetas do documento e colaboradores

 Colaboradores desta página: alefesouza
 Última atualização por: alefesouza,