default

The default keyword can be used in two situations in JavaScript: within a switch statement, or with an export statement.

Syntax

Within a switch statement:

JavaScript
switch (expression) {
  case value1:
    //Statements executed when the result of expression matches value1
    [break;]
  default:
    //Statements executed when none of the values match the value of the expression
    [break;]
}

With export statement:

JavaScript
export default nameN 

Description

For more details see the

Examples

Using default in switch statements

In the following example, if expr evaluates to "Bananas" or "Apples", the program matches the values with either the case "Bananas" or "Apples" and executes the corresponding statement. The default keyword will help in any other case and executes the associated statement.

JavaScript
switch (expr) {
  case "Oranges":
    console.log("Oranges are $0.59 a pound.");
    break;
  case "Apples":
    console.log("Apples are $0.32 a pound.");
    break;
  default:
    console.log("Sorry, we are out of " + expr + ".");
}

Using default with export

If you want to export a single value or need a fallback value for a module, a default export can be used:

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

Then, in another script, it will be straightforward to import the default export:

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

Specifications

Specification Status Comment
ECMAScript 2015 (6th Edition, ECMA-262)
The definition of 'switch statement' in that specification.
Standard  
ECMAScript 2015 (6th Edition, ECMA-262)
The definition of 'Exports' in that specification.
Standard  
ECMAScript 2017 Draft (ECMA-262)
The definition of 'switch statement' in that specification.
Draft  
ECMAScript 2017 Draft (ECMA-262)
The definition of 'Exports' in that specification.
Draft  

Browser compatibility

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Switch default (Yes) (Yes) (Yes) (Yes) (Yes)
Export default No support No support No support No support No support
Feature Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Switch default (Yes) (Yes) (Yes) (Yes) (Yes) (Yes)
Export default No support No support No support No support No support No support

See also

License

© 2016 Mozilla Contributors
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-us/docs/web/javascript/reference/statements/default

JavaScript Keyword