Published at
Updated at
Reading time
1min
This post is part of my Today I learned series in which I share all my web development learnings.

Sometimes when debugging node scripts via console.log you'll run into the situation, that console.log won't show you the complete object you want to inspect.

console.log( { foo: { bar: { baz: { foo: 'Show me!' } } } } );
// { foo: { bar: { baz: [Object] } } }

The solution to this problem is to use util.inspect which also includes the option to color the output.

console.log( util.inspect( { foo: { bar: { baz: { foo: 'Show me!' } } } }, { depth: null, colors: true } );
// { foo: { bar: { baz: { foo: 'Show me!' } } } }

Frederic Hemberger just told me that console.dir uses util.inspect under the hood, which means we can make it even shorter! 🎉

console.dir( { foo: { bar: { baz: { foo: 'Show me!' } } } }, { depth: null, colors: true } );
// { foo: { bar: { baz: { foo: 'Show me!' } } } }
Was this TIL post helpful?
Yes? Cool! You might want to check out Web Weekly for more quick learnings. The last edition went out 13 days ago.
Stefan standing in the park in front of a green background

About Stefan Judis

Frontend nerd with over ten years of experience, freelance dev, "Today I Learned" blogger, conference speaker, and Open Source maintainer.

Related Topics

Related Articles