Node.js supports require()
/module.exports
, but as of ES6, JavaScript supports a new more readable and flexible syntax for exporting modules. These are usually broken down into one of two techniques, default export and named exports.
We’ll begin with the first syntax, default export. The default export syntax works similarly to the module.exports
syntax, allowing us to export one module per file.
Let’s look at an example in menu.js.
let Menu = {}; export default Menu;
export default
uses the JavaScriptexport
statement to export JavaScript objects, functions, and primitive data types.Menu
refers to the name of theMenu
object, the object that we are setting the properties on within our modules.
When using ES6 syntax, we use export default
in place of module.exports
. Node.js doesn’t support export default
by default, so module.exports
is usually used for Node.js development and ES6 syntax is used for front-end development. As with most ES6 features, it is common to transpile code since ES6 is not supported by all browsers.
Instructions
In airplane.js, let’s again create an Airplane
module from scratch, this time exporting the module with export default
. Create an object to represent the module called Airplane
.
Now that we have an object Airplane
, we can continue by adding data in the form of properties and values to the Airplane
module.
Create an availableAirplanes
variable and set it equal to an empty array. Be sure that availableAirplanes
is a property of the Airplane
object.
In the availableAirplanes
array, add two array elements that are both of type object.
The first object should contain a property name
with a value 'AeroJet'
and a property fuelCapacity
with a value of 800
.
The second object should have a property name
with a value of SkyJet
and a property fuelCapacity
with a value of 500
.
Use export default
to export the Airplane module
.
Nice work! We added a property that lists the availableAirplanes
to the Airplane
module.