web-dev-qa-db-fra.com

Dumping de tout le tableau: sortie console.log et console.dir "... NUM plus d’éléments]"

J'essaie de connecter un long tableau pour pouvoir le copier rapidement dans mon terminal. Cependant, si j'essaie de consigner le tableau, il se présente comme suit:

['item',
 'item',
  >>more items<<<
  ... 399 more items ]

Comment enregistrer tout le tableau afin de pouvoir le copier très rapidement? 

21
Antoine

Paramètre maxArrayLength

Il existe quelques méthodes qui nécessitent toutes la définition de maxArrayLength qui, par défaut, vaut 100.

  1. Fournissez le remplacement en tant qu'option pour console.log ou console.dir

    console.log( myArry, {'maxArrayLength': null} );
    
  2. Définissez util.inspect.defaultOptions.maxArrayLength = null; qui aura un impact sur tous les appels à console.log et util.format

  3. Appelez vous-même util.inspect avec options .

    const util = require('util')
    console.log(util.inspect(array, { maxArrayLength: null }))
    
34
Michael Hellein

Quel est le problème avec myArray.forEach(item => console.log(item))?

2
djones

Utilisation de console.table

Disponible dans Node v10 +, et dans tous les navigateurs Web modernes , vous pouvez utiliser plutôt console.table(), qui générera une belle table utf8 dans laquelle chaque ligne représente un élément du tableau.

> console.table([{ a: 1, b: 'Y' }, { a: 'Z', b: 2 }], ['a']);

┌─────────┬─────┐
│ (index) │  a  │
├─────────┼─────┤
│    0    │  1  │
│    1    │ 'Z' │
└─────────┴─────┘
2
squiroid

La réponse de Michael Hellein n'a pas fonctionné pour moi, mais une version proche a fait ceci:

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

C'était la seule solution qui fonctionnait pour moi car JSON.stringify() était trop moche pour mes besoins et je n'avais pas besoin d'écrire le code pour l'imprimer un par un.

1
Big Money