In Node.js you use modules to build your script. A module is the same as a JavaScript library, which can be reused throughout the Node.js application.
Node.js has a set of built-in modules (named also "core modules") which you can use without any further installation.
- See this page for a List with Node.js Core Modules.

Include Modules

To use Node.js module, you first need to include it using require() function.
var module = require('module_name');
Example: Using the HTTP module to create a Node.js server:
const http = require('http');

const server = http.createServer((req, res)=> {
  res.writeHead(200, {'Content-Type':'text/plain'});
  res.end('Hello to me.');
});

server.listen(8080, ()=> {
  console.log('Server running at //localhost:8080/');
});

Create Modules

You can create your own modules, and easily include them in your applications.
In Node.js, module should be placed in a separate JavaScript file.
- The following example creates a module that contains an object with properties for current date and time:
//module to get and use date and time
class mDateTime {
  //set propertie with date and time
  constructor() {
    this.dt = new Date();
    this.year = this.dt.getFullYear();
    this.month = this.dt.getMonth()+1;
    this.day = this.dt.getDate();
    this.hour = this.dt.getHours();
    this.minute = this.dt.getMinutes();
    this.seconds = this.dt.getSeconds();
  }

  //returns string with: year.month.day
  get date(){
    return this.year+'.'+this.month+'.'+this.day;
  }

  //returns string with: hour:minute:seconds
  get time(){
    return this.hour+':'+this.minute+':'+this.seconds;
  }
}

//assign objhecy of mDateTime class to module.exports
module.exports = new mDateTime();
Assign the desired object (here new mDateTime()) to module.exports to make properties and methods available outside the module file. So, the object can be used in the script when the module is included with require().
Save the code above in a file called 'mdatetime.js'.

- Now, we can use this module in a Node.js script.

For test, lets create a Node.js file that displays in browser the date and time when the server was started.
Copy and save the folowing code in a file called "demo_mdatetime.js", in the same folder as the "mdatetime.js" module.
//include the http module
const http = require('http');

//include mdatetime module; located in the same folder
var dt = require('./mdatetime');

//set a string with the date and time when the server is started, using the properties defined in the mdatetime module
var current_dt = dt.date +' - '+ dt.time;

//define constant for port
const port =8080;

//sets the server
const server = http.createServer((req, res)=> {
  res.writeHead(200, {'Content-Type':'text/plain'});
  res.write('Server started in the date-time: '+ current_dt);
  res.end();
});

//pass the port to server to listen to
server.listen(port, ()=> {
  console.log('Server running at //localhost:'+ port +'/');
});
- We use "./" to locate the module, that means that the module is located in the same folder as the Node.js file.
Initiate the file in the Command line interface.
If you don't know how to initiuate a Node.js file in command line interface to start the server, see the previous tutorial: Node.js Get Started.
- I have the module and the "demo_mdatetime.js" file saved in "E:/nodejs/test/" folder, and I use this in command line interface to start Node.js with that file:
E:/nodejs>node test/demo_mdatetime.js
To see the results, open the server in your browser: //localhost:8080/
If you have followed the same steps on your computer, you will see the same result as in this screenshoot:
Node.js demo module mdatetime

Daily Test with Code Example

HTML
CSS
JavaScript
PHP-MySQL
Which tag defines the clickable areas inside the image map?
<map> <img> <area>
<img src="image.jpg" usemap="#map1">
<map name="map1">
  <area shape="rect" coords="9, 120, 56, 149" href="#">
  <area shape="rect" coords="100, 200, 156, 249" href="#">
</map>
Which CSS property defines what is done if the content in a box is too big for its defined space?
display overflow position
#id {
  overflow: auto;
}
Click on the event which is triggered when the mouse is positioned over an object.
onclick onmouseover onmouseout
document.getElementById("id").onmouseover = function(){
  document.write("Have Good Life");
}
Indicate the PHP variable that contains data added in URL address after the "?" character.
$_SESSION $_GET $_POST
if(isset($_GET["id"])) {
  echo $_GET["id"];
}
Node.js Modules

Last accessed pages

  1. Mahjong Gardens (7308)
  2. Dolphin Olympics 2 (1830)
  3. Get the value of the selected /checked checkboxes in a form (28843)
  4. Add, Change, and Remove Attributes with jQuery (29341)
  5. Atlantis Quest (4526)

Popular pages this month

  1. Qwop (10555)
  2. Drag Racer V3 (6224)
  3. Flash Games - Free online Games (2162)
  4. List with All the Games (2073)
  5. Bubbles3 (1996)