Saltar al contenido

Cómo imprimir objetos en Node JS

Nuestro grupo de redactores ha pasado horas investigando para dar resolución a tu pregunta, te ofrecemos la resolución así que nuestro deseo es que resulte de gran ayuda.

Solución:

Básico console.log no pasará por un objeto largo y complejo, y puede decidir simplemente imprimir [Object] en lugar de.

Una buena manera de evitar eso en node.js es usar util.inspect:

'use strict';
const util = require('util'),
    obj = /*Long and complex object*/;

console.log(util.inspect(obj, depth: null));
//depth: null tell util.inspect to open everything until it get to a circular reference, the result can be quite long however.

EDITAR: en un apuro (en el REPL, por ejemplo), una segunda opción es JSON.stringify. No hay necesidad de require pero se romperá en la referencia circular en lugar de imprimir el hecho de que hay una referencia.

Imprime todo el objeto, no tendrá problemas con las referencias recursivas:

console.log(res);

Aquí hay un ejemplo para que veas cómo console.log maneja las referencias circulares:

> var q = a:0, b:0
> q.b = q
> console.log(q)
 a: 0, b: [Circular] 

Además, le aconsejaría que verifique qué datos está recibiendo realmente.

Usando el http request cliente, puedo imprimir el objeto JSON así como imprimir el country valor. A continuación se muestra mi código actualizado.

var request = require('request');
request('http://ip-api.com/json', function (error, response, body) 
  if (!error && response.statusCode == 200) 
    console.log(response.body);    // Prints the JSON object
    var object = JSON.parse(body);
    console.log(object['country']) // Prints the country value from the JSON object
  
);

Reseñas y calificaciones

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *