diff --git a/doc/api/console.markdown b/doc/api/console.markdown index 62bccf43235..154b4bf6979 100644 --- a/doc/api/console.markdown +++ b/doc/api/console.markdown @@ -47,10 +47,10 @@ 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 +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 +- `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 diff --git a/lib/console.js b/lib/console.js index 63dcbe17b1e..75ca0adeaad 100644 --- a/lib/console.js +++ b/lib/console.js @@ -66,12 +66,9 @@ Console.prototype.error = Console.prototype.warn; Console.prototype.dir = function(object, options) { - if (typeof options === 'object' && options !== null) { - options.customInspect = false; - } else { - options = { customInspect: false }; - } - this._stdout.write(util.inspect(object, options) + '\n'); + this._stdout.write(util.inspect(object, util._extend({ + customInspect: false + }, options)) + '\n'); };