Our volunteers haven't translated this article into Català yet. Join us and help get the job done!
You can also read the article in English (US).

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:

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:

export default nameN 

Description

For more details see the

Examples

Using default in switch statements

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

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:

// 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:

// module "my-module.js"
import cube from 'my-module';  //default export gave us the liberty to say import cube, instead of import cube from 'my-module'
console.log(cube(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 Latest Draft (ECMA-262)
The definition of 'switch statement' in that specification.
Draft  
ECMAScript Latest Draft (ECMA-262)
The definition of 'Exports' in that specification.
Draft  

Browser compatibility

FeatureChromeEdgeFirefoxInternet ExplorerOperaSafari
default keyword in switch Yes Yes1 Yes Yes Yes
default keyword with export61

16

151

60

54 — 602

No4710.1
FeatureAndroid webviewChrome for AndroidEdge mobileFirefox for AndroidOpera AndroidiOS SafariSamsung Internet
default keyword in switch Yes Yes Yes4 Yes Yes Yes
default keyword with export No61 Yes

60

54 — 602

4710.1 No

1. From version 15: this feature is behind the Experimental JavaScript Features preference.

2. From version 54 until version 60 (exclusive): this feature is behind the dom.moduleScripts.enabled preference. To change preferences in Firefox, visit about:config.

See also

Document Tags and Contributors

Last updated by: sudheerj,