Investigamos por diferentes foros y así tenerte la solución a tu inquietud, si continúas con alguna difcultad puedes dejar tu duda y responderemos con mucho gusto, porque estamos para servirte.
Las excepciones de JavaScript lanzadas por JSON.parse()
ocurrir cuando string no se pudo analizar como JSON.
Mensaje
SyntaxError:JSON.parse: unterminated string literal SyntaxError:JSON.parse: bad control character in string literal SyntaxError:JSON.parse: bad character in string literal SyntaxError:JSON.parse: bad Unicode escape SyntaxError:JSON.parse: bad escape character SyntaxError:JSON.parse: unterminated string SyntaxError:JSON.parse: no number after minus sign SyntaxError:JSON.parse: unexpected non-digit SyntaxError:JSON.parse: missing digits after decimal point SyntaxError:JSON.parse: unterminated fractional number SyntaxError:JSON.parse: missing digits after exponent indicator SyntaxError:JSON.parse: missing digits after exponent sign SyntaxError:JSON.parse: exponent part is missing a number SyntaxError:JSON.parse: unexpected end of data SyntaxError:JSON.parse: unexpected keyword SyntaxError:JSON.parse: unexpected character SyntaxError:JSON.parse: end of data while reading object contents SyntaxError:JSON.parse: expected property name or '}' SyntaxError:JSON.parse: end of data when ',' or ']' was expected SyntaxError:JSON.parse: expected ',' or ']' after array element SyntaxError:JSON.parse: end of data when property name was expected SyntaxError:JSON.parse: expected double-quoted property name SyntaxError:JSON.parse: end of data after property name when ':' was expected SyntaxError:JSON.parse: expected ':' after property name in object SyntaxError:JSON.parse: end of data after property value in object SyntaxError:JSON.parse: expected ',' or '}' after property value in object SyntaxError:JSON.parse: expected ',' or '}' after property-value pair in object literal SyntaxError:JSON.parse: property names must be double-quoted strings SyntaxError:JSON.parse: expected property name or '}' SyntaxError:JSON.parse: unexpected character SyntaxError:JSON.parse: unexpected non-whitespace character after JSON data SyntaxError:JSON.parse Error: Invalid character at position 0(Edge)
Tipo de error
SyntaxError
¿Qué salió mal?
JSON.parse()
analiza un string como JSON. Esta string tiene que ser JSON válido y generará este error si se encuentra una sintaxis incorrecta.
Ejemplos de
JSON.parse()
no permite comas finales
Ambas líneas arrojarán un SyntaxError:
JSON.parse('[1, 2, 3, 4,]');JSON.parse('"foo": 1,');// SyntaxError JSON.parse: unexpected character// at line 1 column 14 of the JSON data
Omita las comas finales para analizar el JSON correctamente:
JSON.parse('[1, 2, 3, 4]');JSON.parse('"foo": 1');
Los nombres de propiedad deben ser cadenas entre comillas dobles
No puede usar comillas simples alrededor de las propiedades, como ‘foo’.
JSON.parse("'foo': 1");// SyntaxError: JSON.parse: expected property name or '}'// at line 1 column 2 of the JSON data
En su lugar, escribe “foo”:
JSON.parse('"foo": 1');
Ceros iniciales y puntos decimales
No puede utilizar ceros a la izquierda, como 01, y los puntos decimales deben ir seguidos de al menos un dígito.
JSON.parse('"foo": 01');// SyntaxError: JSON.parse: expected ',' or '}' after property value// in object at line 1 column 2 of the JSON dataJSON.parse('"foo": 1.');// SyntaxError: JSON.parse: unterminated fractional number// at line 1 column 2 of the JSON data
En su lugar, escriba solo 1 sin cero y use al menos un dígito después de un punto decimal:
JSON.parse('"foo": 1');JSON.parse('"foo": 1.0');
Ver también
JSON
JSON.parse()
JSON.stringify()
Si crees que ha resultado provechoso este post, te agradeceríamos que lo compartas con el resto entusiastas de la programación y nos ayudes a difundir esta información.