console

  1. Stability: 4 - API Frozen
  • {Object}

For printing to stdout and stderr. Similar to the console object functions
provided by most web browsers, here the output is sent to stdout or stderr.

The console functions are synchronous when the destination is a terminal or
a file (to avoid lost messages in case of premature exit) and asynchronous
when it’s a pipe (to avoid blocking for long periods of time).

That is, in the following example, stdout is non-blocking while stderr
is blocking:

  1. $ node script.js 2> error.log | tee info.log

In daily use, the blocking/non-blocking dichotomy is not something you
should worry about unless you log huge amounts of data.

console.log([data][, …])

Prints to stdout with newline. This function can take multiple arguments in a
printf()-like way. Example:

  1. var count = 5;
  2. console.log('count: %d', count);
  3. // prints 'count: 5'

If formatting elements are not found in the first string then util.inspect
is used on each argument. See util.format() for more information.

console.info([data][, …])

Same as console.log.

console.error([data][, …])

Same as console.log but prints to stderr.

console.warn([data][, …])

Same as console.error.

console.dir(obj[, options])

Uses util.inspect on obj and prints resulting string to stdout. This function
bypasses any custom inspect() function on obj. An optional options object
may be passed that alters certain aspects of the formatted string:

  • showHidden - if true then the object’s non-enumerable properties will be
    shown too. Defaults to false.

  • depth - tells inspect how many times to recurse while formatting the
    object. This is useful for inspecting large complicated objects. Defaults to
    2. To make it recurse indefinitely pass null.

  • colors - if true, then the output will be styled with ANSI color codes.
    Defaults to false. Colors are customizable, see below.

console.time(label)

Mark a time.

console.timeEnd(label)

Finish timer, record output. Example:

  1. console.time('100-elements');
  2. for (var i = 0; i < 100; i++) {
  3. ;
  4. }
  5. console.timeEnd('100-elements');
  6. // prints 100-elements: 262ms

console.trace(message[, …])

Print to stderr 'Trace :', followed by the formatted message and stack trace
to the current position.

console.assert(value[, message][, …])

Similar to assert.ok(), but the error message is formatted as
util.format(message...).