Dumping whole array: console.log and console.dir output “… NUM more items]”

前端 未结 5 1944
悲&欢浪女
悲&欢浪女 2020-12-04 23:34

I am trying to log a long array so I can copy it quickly in my terminal. However, if I try and log the array it looks like:

[\'item\',
 \'item\',
  >>m         


        
相关标签:
5条回答
  • 2020-12-04 23:53

    Michael Hellein's answer didn't work for me, but a close version did:

    console.dir(myArray, {'maxArrayLength': null})
    

    This was the only solution that worked for me as JSON.stringify() was too ugly for my needs and I didn't need to write the code to print it out one at a time.

    0 讨论(0)
  • 2020-12-05 00:01

    Setting maxArrayLength

    There are a few methods all of which require setting maxArrayLength which otherwise defaults to 100.

    1. Provide the override as an option to console.dir

      console.dir(myArry, {'maxArrayLength': null});
      
    2. Set util.inspect.defaultOptions.maxArrayLength = null; which will impact all calls to console.log and util.format

    3. Call util.inspect yourself with options.

      const util = require('util')
      console.log(util.inspect(array, { maxArrayLength: null }))
      
    0 讨论(0)
  • 2020-12-05 00:06

    What's wrong with myArray.forEach(item => console.log(item))?

    0 讨论(0)
  • 2020-12-05 00:07

    Using console.table

    Available in Node v10+, and all modern web-browsers, you can use console.table() instead, which will output a beautiful utf8 table where each row represents an element of the array.

    > console.table([{ a: 1, b: 'Y' }, { a: 'Z', b: 2 }], ['a']);
    
    ┌─────────┬─────┐
    │ (index) │  a  │
    ├─────────┼─────┤
    │    0    │  1  │
    │    1    │ 'Z' │
    └─────────┴─────┘
    
    0 讨论(0)
  • 2020-12-05 00:17

    Just found that option maxArrayLength works well with console.dir too:

    console.dir(array, {depth: null, colors: true, maxArrayLength: null});

    0 讨论(0)
提交回复
热议问题