console.log (resultado) imprime [object Object]. ¿Cómo obtengo result.name? [duplicate]

3 minutos de lectura

Avatar de usuario de Wassim Benhamida
Wassim Benhamida

Mi guión se está imprimiendo [object Object] como resultado de console.log(result).

¿Puede alguien explicar cómo tener console.log imprimir el id y name de result?

$.ajaxSetup({ traditional: true });

var uri = "";

$("#enginesOuputWaiter").show();    
$.ajax({
    type: "GET",
    url: uri,
    dataType: "jsonp",
    ContentType:'application/javascript',
    data :{'text' : article},
    error: function(result) {
        $("#enginesOuputWaiter").hide();
        if(result.statusText === 'success') {
            console.log("ok");
            console.log(result);
        } else {
            $("#enginesOuput").text('Invalid query.');
        }
    }
});

  • ¿Intentaste analizarlo? [object Object] es solo una representación de cadena, no el aspecto real del objeto.

    – carcigenar

    26 de diciembre de 2016 a las 22:06

  • Ese servicio web parece devolver JSON, no JSONP, por lo que debe cambiar su dataType. Probablemente también sea por eso que su error se invoca el controlador, donde difícilmente obtendrá un éxito result.

    – Bergi

    26 de diciembre de 2016 a las 22:08

  • Tienes el símbolo BOM en tu respuesta: joxi.ru/vAWVVbh1k34N2W así que arregle su código php, limpie las listas de materiales de codificación utf8 innecesarias

    – número 8

    26 de diciembre de 2016 a las 22:09

  • result.statusText = 'success' debiera ser result.statusText === 'success'. De lo contrario, está asignando ‘éxito’ al objeto de resultado.

    –Andrés Andrade

    26 de diciembre de 2016 a las 22:17

  • Probar console.log("result: ", result);

    – mtotowamkwe

    15 de julio de 2021 a las 22:23

avatar de usuario de suvartheec
suvartheec

Usar console.log(JSON.stringify(result)) para obtener el JSON en formato de cadena.

EDITAR: si su intención es obtener la identificación y otras propiedades del objeto de resultado y desea verlo en la consola para saber si está allí, puede consultar con hasOwnProperty y acceda a la propiedad si existe:

var obj = {id : "007", name : "James Bond"};
console.log(obj);                    // Object { id: "007", name: "James Bond" }
console.log(JSON.stringify(obj));    //{"id":"007","name":"James Bond"}
if (obj.hasOwnProperty("id")){
    console.log(obj.id);             //007
}

  • También puede obtener un registro de estilo json en esta mansión ‘console.log(‘connection: %j’, myObject);’

    – Chinmay Samant

    9 de noviembre de 2018 a las 6:53

  • Hola, pensé que estaba tratando de hacer lo mismo, pero seguí obteniendo ERROR TypeError: Converting circular structure to JSON . ¿Esto se debe a que no estoy aplicando este método en un objeto?

    – Gel

    18 de enero de 2019 a las 2:31

  • @GelSisaed Eso sucederá si alguna de las propiedades de su variable es una referencia a esa variable. refiérase a este post y también a este

    – suvartheec

    18 de enero de 2019 a las 9:26


  • Sí, me dio cuerda "[object Object]" como si se estuviera burlando de mí.

    – Ben Racicot

    22 oct 2020 a las 21:07


  • También puedes usar console.debug(obj) o console.dir(obj) para obtener el resultado en nodejs

    – ikhvjs

    25 de agosto de 2021 a las 9:16

Intenta agregar JSON.stringify(result) para convertir el objeto JS en una cadena JSON.

Desde su código puedo ver que está registrando el resultado en error que se llama si el La solicitud de AJAX falla, por lo que no estoy seguro de cómo haría para acceder a la identificación/nombre/etc. entonces (¡está comprobando el éxito dentro de la condición de error!).

Tenga en cuenta que si usa la consola de Chrome, debería poder navegar a través del objeto sin tener que codificar el JSON, lo que facilita la depuración.

  • ¿Dónde está la petición para hacer esta práctica estándar? [object Object] es la declaración de registro más inútil

    – patata cuántica

    10 de diciembre de 2019 a las 2:31

  • También puedes usar console.debug(obj) o console.dir(obj) para obtener el resultado en nodejs

    – ikhvjs

    25 de agosto de 2021 a las 9:16


¿Ha sido útil esta solución?