skip to Main Content

My server gets a response from another server with a document from a mongodb database with a body similar to

{
    messageDetails: {
        body: "hello"
    },
    customerDetails: {
        cstmrFirstName: 'Random',
        cstmrLastName: 'Name',
    },
}

But the response with the body is being logged to the console as:

{
  messageDetails: [Object],
  customerDetails: [Object],
}

How can I log the full object to the console with each object’s properties?

4

Answers


  1. const util = require(‘util’)

    console.log(util.inspect(objectName, {showHidden: false, depth: null, colors: true}))

    Login or Signup to reply.
  2. Try console.log(JSON.stringify(body))
    Checkout MDN doc JSON.stringify() for more details

    Login or Signup to reply.
  3. You can use console.dir. To print with unlimited depth, use {depth: null} option:

    console.dir(body, {depth: null});
    
    Login or Signup to reply.
  4. To anyone using Deno (I didn’t test this anywhere else):

    To make console.dir disregard depth limits, pass a second argument with depth set to Infinity:
    console.dir(body, { depth: Infinity });

    Based on @A1exandr Belan’s answer, but changing null to Infinity, since it seems console.dir takes null as 0 and outputs just a simple [Array].

    Login or Signup to reply.
Please signup or login to give your own answer.
Back To Top
Search