How can I parse unquoted JSON with JavaScript?
4th February 2012
My answer to How can I parse unquoted JSON with JavaScript? on Quora
Unquoted JSON isn’t JSON—the JSON spec requires that strings are quoted (with double quotes, not single quotes).
If you have JSON with unquoted strings what you actually have is just plain JavaScript. So run eval() on it:
var obj = eval(’(’ + invalid_json + ’)’);
(adding the parentheses to the string ensures object literal syntax will be correctly handled).
Update: as pointed out in a comment, you should NOT do this if the JSON is from an untrusted source, especially if you are running the code in Node.js
More recent articles
- LLM 0.22, the annotated release notes - 17th February 2025
- Run LLMs on macOS using llm-mlx and Apple's MLX framework - 15th February 2025
- URL-addressable Pyodide Python environments - 13th February 2025