Module - Export (Es Module)


The export statement is the counterpart of the import statement in the implementation of an ES module.

It has the same functionality that the modules.export statement of CommonJs

This feature is not implemented in any browsers natively at this time. It is implemented in many transpilers.

Export declare the module’s public API.


You can export any top-level function, class, var, let, or const.


Export tag

export function bar(arg1, arg2) {

export class foo {
  ... several methods doing image processing ...

// This function isn't exported and has then a local scope
function private() {

import them as

import { bar, foo } from ...


Rather than tagging each exported feature, you can write out a single list of all the names you want to export. It can appear anywhere in a module file’s top-level scope

export {
   bar as barre // you can rename the exported name

import it as

import { foo, barre } from ...


let myObject = {
  field1: value1,
  field2: value2
export {myObject as default};

import it as

import whatEverNameIWant from ...
  • Shorthand where the keywords export default can be followed by any value: a function, a class, an object literal, …
 export default {
  field1: value1,
  field2: value2


export const name = 'value';

import it with

import { name } from ...;

Powered by ComboStrap