Este artigo detalha como resolver o comum erro “Uncaught SyntaxError: Unexpected token” ao usar a função JSON.parse no JavaScript.
Fala programador(a), beleza? Bora aprender mais sobre os erros de JavaScript!
Introdução
Quando você está trabalhando com JSON no JavaScript, é possível encontrar o erro “Uncaught SyntaxError: Unexpected token”.
Este erro geralmente ocorre quando você está usando a função JSON.parse()
. Neste artigo, vamos discutir por que esse erro ocorre e como você pode resolvê-lo.
Entendendo o Erro “Unexpected Token”
A função JSON.parse()
é usada para transformar uma string JSON em um objeto JavaScript.
O erro “Unexpected token” ocorre quando o JSON.parse()
tenta analisar uma string que não está no formato JSON válido.
Isso pode acontecer por várias razões, como um erro de digitação, um valor mal formatado, ou a inclusão de caracteres indesejados na string.
let jsonData = '{"nome": "João", "idade": 30, }'; let obj = JSON.parse(jsonData); // Uncaught SyntaxError: Unexpected token } in JSON at position 29
No exemplo acima, a string JSON é inválida porque há uma vírgula extra depois do último item do objeto.
Isso faz com que o JSON.parse()
espere outro par de chave/valor, mas em vez disso, ele encontra um ‘}’ – o token inesperado.
Como Resolver o Erro
O primeiro passo para resolver o erro “Unexpected token” é verificar se a string que você está passando para JSON.parse()
é um JSON válido.
Você pode fazer isso visualmente ou usar uma ferramenta de validação JSON online.
Uma vez que a string seja válida, o erro deve desaparecer.
No exemplo anterior, a correção seria simplesmente remover a vírgula extra.
let jsonData = '{"nome": "João", "idade": 30}'; let obj = JSON.parse(jsonData); // Agora funciona!
Mas e se a string JSON estiver vindo de uma fonte que você não controla, como uma API?
Nesse caso, você pode usar um bloco try/catch
para capturar o erro e lidar com ele de uma maneira que não interrompa o restante do seu código.
let jsonData = '{"nome": "João", "idade": 30, }'; try { let obj = JSON.parse(jsonData); } catch (e) { console.log("JSON inválido:", e); }
Neste exemplo, se a string JSON for inválida, o erro será capturado e uma mensagem será exibida no console. Isso permite que o restante do código continue funcionando.
Quer aprender mais sobre JavaScript? Confira o vídeo abaixo:
Conclusão
Chegamos ao fim do artigo sobre como resolver Erro Unexpected token JSON.parse!
O erro “Uncaught SyntaxError: Unexpected token” ao usar JSON.parse()
é comum, mas também fácil de resolver.
O mais importante é garantir que a string que você está passando para JSON.parse()
seja um JSON válido.
Se a string estiver vindo de uma fonte que você não controla, você também pode usar um bloco try/catch
para lidar com possíveis erros.
Com essas técnicas em seu arsenal, você estará bem equipado para lidar com esse erro comum no desenvolvimento JavaScript.
Está buscando em evoluir como Programador? Confira o nossos cursos clicando aqui.
Nosso principal objetivo é tornar você um dev profissional que é capaz de resolver problemas de alta dificuldade e criar projetos complexos, através de uma metodologia planejada nos mínimos detalhes, após formar muitos outros desenvolvedores.
Cursos com vários projetos, exercícios, material apoio, comunidade de alunos e muito mais!