| [ Web Proxy ] |
| Viewing: https://developer.mozilla.org/pt-BR/docs/Web/JavaScript/Reference/Global_Objects/JSON/parse | [Back] [Original] |
Get to know MDN better
Esta pgina foi traduzida do ingls pela comunidade. Saiba mais e junte-se comunidade MDN Web Docs.
This feature is well established and works across many devices and browser versions. Its been available across browsers since julho de 2015.
* Some parts of this feature may have varying levels of support.
O mtodo JSON.parse() analisa uma string JSON, construindo o valor ou um objeto JavaScript descrito pela string. Uma funo reviver opcional pode ser fornecida para executar uma transformao no objeto que ser retornado.
const json = '{"result":true, "count":42}';
const obj = JSON.parse(json);
console.log(obj.count);
// Expected output: 42
console.log(obj.result);
// Expected output: true
JSON.parse(text[, reviver])
textA string para analisar como JSON. Veja o objeto JSON para uma descrio da sintaxe JSON.
reviver OptionalSe for uma funo, prescreve como o valor originalmente produzido pela anlise ser transformado antes de ser retornado.
O Object correspondente ao text JSON fornecido.
Lana uma exceo SyntaxError se a string a ser analisada no for um JSON vlido.
JSON.parse()JSON.parse("{}"); // {}
JSON.parse("true"); // true
JSON.parse('"foo"'); // "foo"
JSON.parse('[1, 5, "false"]'); // [1, 5, "false"]
JSON.parse("null"); // null
reviverSe um reviver for especificado, o valor calculado pela anlise ser transformado antes de ser retornado. Especificamente, o valor computado e todas as suas propriedades (comeando com as propriedades mais aninhadas e prosseguindo para o prprio valor original) so executadas individualmente atravs do reviver. Em seguida, ele chamado, com o objeto contendo a propriedade sendo processada como this, e com o nome da propriedade como uma string, e o valor da propriedade como argumentos. Se a funo reviver retornar undefined (ou no retornar nenhum valor, por exemplo, se a execuo cair no final da funo), a propriedade ser excluda do objeto. Caso contrrio, a propriedade redefinida para ser o valor de retorno.
Se o reviver apenas transformar alguns valores e no outros, certifique-se de retornar todos os valores no transformados como esto, caso contrrio, eles sero excludos do objeto resultante.
JSON.parse(
'{"p": 5}',
(key, value) =>
typeof value === "number"
? value * 2 // retorna o valor * 2 para nmeros
: value, // retorna tudo sem alterao
);
// { p: 10 }
JSON.parse('{"1": 1, "2": 2, "3": {"4": 4, "5": {"6": 6}}}', (key, value) => {
console.log(key); // mostra o nome da propriedade atual, o ltimo "".
return value; // retorna o valor da propriedade inalterada.
});
// 1
// 2
// 4
// 6
// 5
// 3
// ""
JSON.parse() no permite vrgulas direta// ambos retornaro um SyntaxError
JSON.parse("[1, 2, 3, 4, ]");
JSON.parse('{"foo" : 1, }');
| Specification |
|---|
| ECMAScript 2027 LanguageSpecification # sec-json.parse |
This page was last modified on 17 de fev. de 2025 by MDN contributors.
Your blueprint for a better internet.
Portions of this content are 19982026 by individual mozilla.org contributors. Content available under a Creative Commons license.
| Web Proxy Viewer | New URL | Original Page |