Log nested objects in Node
The default “recurse depth” of console.dir
is 2. This is rarely what I want.
Consider the following contrived example.
const person = {
fullName: {
given: 'John',
family: 'Doe',
},
visited: [
{
place: 'Paris',
country: {
label: 'France',
code: 'FR',
},
},
{
place: 'Nha Trang',
country: {
label: 'Viet Nam',
code: 'VN',
},
},
],
}
By default, console.dir
stops short of expanding the country
object.
console.dir(person)
// Output
{
fullName: { given: 'John', family: 'Doe' },
visited: [
{ place: 'Paris', country: [Object] },
{ place: 'Nha Trang', country: [Object] }
]
}
Fix this by specifying the depth
option.
console.dir(person, { depth: Infinity })
// Output
{
fullName: { given: 'John', family: 'Doe' },
visited: [
{ place: 'Paris', country: { label: 'France', code: 'FR' } },
{ place: 'Nha Trang', country: { label: 'Viet Nam', code: 'VN' } }
]
}
Sign up for my newsletter
A monthly round-up of blog posts, projects, and internet oddments.