Skip to content
Related Articles

Related Articles

Improve Article
Save Article
Like Article

Expose Functionality from a Node.js file using exports

  • Last Updated : 14 Oct, 2021

Module.exports API to expose Data to other files

Node supports built-in module system. Node.js can import functionality which are exposed by other Node.js files. To import something, you need to use the import functionality exposed by the library.js file that is present in the current file folder.

const library = require('./library')                // Path

The functionality in the file must be exposed before it could be imported into any other files. An object defined in the file by default is private and unexposed to the outer world.

The module.exports file API is offered by the module system to implement in the code.
module is a variable that represents the current module and exports is an object which will be exposed as a module. So, the module.exports and exports will both be exposed as a module.

module.exports is basically an object which returns the result of a require call.

You need the new exports property to import the object or function in any other parts of your app. You can do so in 2 ways:

The first way is to assign an object to module.exports where the object is provided out of the box by module system.


const person = {
    firstName: 'John',
    lastName: 'Smith'
module.exports = Person
// in the file where you want to export
const person= require(‘./person)

The second way is by adding the exported object as a property of exports. You can use exports to export multiple objects, function or data:

const Person = {
    firstName: 'John',
    lastName: 'Smith'
exports.person = person

Or Directly

exports.person = {
    firstName: 'John',
    lastName: 'Smith'

You’ll use it by referencing a property of your import in the other file:

Const items = require('items')


const person= require('./items').person

What’s the difference between module.exports and exports?

The first exposes the object it points to whereas the latter exposes the properties of the object it points to.

My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!