ECMAScript 6 modules
In the new version of JavaScript, ECMAScript 6 (also known as ES6), native modules have been introduced. The following points are some of the most important aspects of these modules:
Module code always automatically runs in strict mode
Variables that are created in the top level of a module are not added to the global scope
A module must export anything that should be available to the outside code
A module can import bindings (things that are exported from other modules)
The main idea behind modules in ES6 is to give you complete control over what is accessible to the outside code from inside the module, as well as when the code inside of the module is executed.
Let's have a look at a simple example of an ES6 module.
Defining an ES6 module
We can define an ES6 module either inside of a .js
file, or inside a <script>
tag in our.html
page.
Consider the following code snippet, from an imaginary simpleModule.js
file:
var name = "Tom"; // export function export function sayHello...