Node.js v0.8.1 Manual & Documentation


Global Objects#

These objects are available in all modules. Some of these objects aren't actually in the global scope but in the module scope - this will be noted.

global#

  • {Object} The global namespace object.

In browsers, the top-level scope is the global scope. That means that in browsers if you're in the global scope var something will define a global variable. In Node this is different. The top-level scope is not the global scope; var something inside a Node module will be local to that module.

process#

  • {Object}

The process object. See the process object section.

console#

  • {Object}

Used to print to stdout and stderr. See the stdio section.

Class: Buffer#

  • {Function}

Used to handle binary data. See the buffer section

require()#

  • {Function}

To require modules. See the Modules section. require isn't actually a global but rather local to each module.

require.resolve()#

Use the internal require() machinery to look up the location of a module, but rather than loading the module, just return the resolved filename.

require.cache#

  • Object

Modules are cached in this object when they are required. By deleting a key value from this object, the next require will reload the module.

require.extensions#

  • Array

Instruct require on how to handle certain file extensions.

Process files with the extension .sjs as .js:

require.extensions['.sjs'] = require.extensions['.js'];

Write your own extension handler:

require.extensions['.sjs'] = function(module, filename) {
  var content = fs.readFileSync(filename, 'utf8');
  // Parse the file content and give to module.exports
  module.exports = content;
};

__filename#

  • {String}

The filename of the code being executed. This is the resolved absolute path of this code file. For a main program this is not necessarily the same filename used in the command line. The value inside a module is the path to that module file.

Example: running node example.js from /Users/mjr

console.log(__filename);
// /Users/mjr/example.js

__filename isn't actually a global but rather local to each module.

__dirname#

  • {String}

The name of the directory that the currently executing script resides in.

Example: running node example.js from /Users/mjr

console.log(__dirname);
// /Users/mjr

__dirname isn't actually a global but rather local to each module.

module#

  • {Object}

A reference to the current module. In particular module.exports is the same as the exports object. module isn't actually a global but rather local to each module.

See the module system documentation for more information.

exports#

An object which is shared between all instances of the current module and made accessible through require(). exports is the same as the module.exports object. exports isn't actually a global but rather local to each module.

See the module system documentation for more information.

See the module section for more information.

setTimeout(cb, ms)#

clearTimeout(t)#

setInterval(cb, ms)#

clearInterval(t)#

The timer functions are global variables. See the timers section.