default

В JavaScript ключевое слово default используется в двух случаях: внутри конструкции switch или с конструкцией export.

Синтаксис

В конструкции switch:

switch (expression) {
  case value1:
    // Выражение выполнится, когда значение expression соответствует value1
    [break;]
  default:
    // Выражение выполнится, когда ни одно из значений не будет соответствовать значению expression
    [break;]
}

С конструкцией export:

export default nameN 

Описание

Для получения дополнительной информации смотрите:

Примеры

Использование default в  switch

В следующем примере, если expr имеет значение  "Апельсины" или "Яблоки", то программа сопоставит это значение с "Апельсины" или с "Яблоки", а затем выполнит соответствующее выражение. В других случаях поможет ключевое слово default,  выполня связанное выражение.

switch (expr) {
  case 'Апельсины':
    console.log('Апельсины стоят $0.59 за фунт.');
    break;
  case 'Яблоки':
    console.log('Яблоки стоят $0.32 за фунт.');
    break;
  default:
    console.log(`Извините, у нас закончились ${expr}.`);
}

Использование default с export

При необходимости экспорта единственного значения или резервирования (fallback) значения для модуля, можно воспользоваться экспортом по-умолчанию: 

// модуль "my-module.js"
let cube = function cube(x) {
  return x * x * x;
};
export default cube;

Тогда, в другом файле JavaScript, становится возможным просто импортировать экспортируемое по-умолчанию значение:

// модуль "my-module.js"
import myFunction from 'my-module';
console.log(myFunction(3)); // 27

Спецификация

Спецификация Статус Комментарий
ECMAScript 2015 (6th Edition, ECMA-262)
Определение 'switch statement' в этой спецификации.
Стандарт
ECMAScript 2015 (6th Edition, ECMA-262)
Определение 'Exports' в этой спецификации.
Стандарт
ECMAScript (ECMA-262)
Определение 'switch statement' в этой спецификации.
Живой стандарт
ECMAScript (ECMA-262)
Определение 'Exports' в этой спецификации.
Живой стандарт

Совместимость с браузерами

No compatibility data found. Please contribute data for "javascript.statements.default" (depth: 1) to the MDN compatibility data repository.

Смотрите также