Saltar al contenido

SyntaxError: Token o inesperado en JSON en la posición 1

Solución:

El JSON que publicó se ve bien, sin embargo, en su código, lo más probable es que ya no sea una cadena JSON, sino que ya sea un objeto JavaScript. Esto significa que no es necesario analizar más.

Puede probar esto usted mismo, por ejemplo, en la consola de Chrome:

new Object().toString()
// "[object Object]"

JSON.parse(new Object())
// Uncaught SyntaxError: Unexpected token o in JSON at position 1

JSON.parse("[object Object]")
// Uncaught SyntaxError: Unexpected token o in JSON at position 1

JSON.parse() convierte la entrada en una cadena. los toString() método de objetos JavaScript por defecto devuelve [object Object], resultando en el comportamiento observado.

En su lugar, intente lo siguiente:

var newData = userData.data.userList;

los primeros parámetros de función JSON.parse debe ser una cadena, y sus datos son un objeto de JavaScript, por lo que se convertirá en una cadena [object object], Deberías usar JSON.stringify antes de pasar los datos

JSON.parse(JSON.stringify(userData))

Nunca uses JSON.parse sin envolverlo en try-catch cuadra:

// payload 
let userData = null;

try {
    // Parse a JSON
    userData = JSON.parse(payload); 
} catch (e) {
    // You can read e for more info
    // Let's assume the error is that we already have parsed the payload
    // So just return that
    userData = payload;
}

// Now userData is the parsed result
¡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 *