End of input while parsing an object (missing '}') at line L,10
This message comes from hjson on Node.js 22.22.2. In this registry it is produced by 2 distinct mistakes. Positions in the real message vary with your input; the causes do not.
What produces this message
Leading zero in a JSON number
{"a": 013}Exact message: End of input while parsing an object (missing '}') at line 1,10 >>>"a": 013} ...
Fix: Quote it. `"013"` is a string and keeps its padding; `13` is a number and does not.
NaN is not valid JSON
{"a": NaN}Exact message: End of input while parsing an object (missing '}') at line 1,10 >>>"a": NaN} ...
Fix: Emit `null` instead, or a sentinel your consumer understands. In Python, pass `allow_nan=False` to `json.dumps` so the problem surfaces at write time rather than at read time in someone else's service.
What other parsers say about the same input
If a colleague reports a different message for what looks like the same file, this is why.
| Parser | Message for the same inputs |
|---|---|
| CPython json.loads | Expecting ',' delimiter: line L column C (char N) |
| JSON5 | JSON5: invalid character '1' at 1:8 |
| JSON::PP | malformed JSON string, neither array, object, number, string or atom, at character offset N (before "…")malformed number (leading zero must not be followed by another digit), at character offset N (before "…") |
| Jackson ObjectMapper | Invalid numeric value: Leading zeroes not allowedNon-standard token 'NaN': enable `JsonReadFeature.ALLOW_NON_NUMERIC_NUMBERS` to allow |
| JavaScriptCore JSON.parse | JSON Parse error: Expected '}'JSON Parse error: Unexpected identifier "NaN" |
| Ruby JSON.parse | unexpected token at '…' |
| SpiderMonkey JSON.parse | JSON.parse: expected ',' or '}' after property value in object at line L column C of the JSON dataJSON.parse: unexpected character at line L column C of the JSON data |
| System.Text.Json Deserialize | 'N' is an invalid start of a value. Path: $ | LineNumber: L | BytePositionInLine: C.Invalid leading zero before '1'. Path: $ | LineNumber: L | BytePositionInLine: C. |
| System.Text.Json JsonDocument | 'N' is an invalid start of a value. LineNumber: L | BytePositionInLine: C.Invalid leading zero before '1'. LineNumber: L | BytePositionInLine: C. |
| V8 JSON.parse | Unexpected number in JSON at position N (line L column C)Unexpected token 'N', "{"a": NaN}" is not valid JSON |
| encoding/json Unmarshal | invalid character '1' after object key:value pairinvalid character 'N' looking for beginning of value |
| json-bigint | Unexpected 'N' |
| json_decode | Syntax error |
| orjson | number with leading zero is not allowed: line L column C (char N)unexpected character, expected a JSON value: line L column C (char N) |
| serde_json::from_str | expected value at line L column Cinvalid number at line L column C |
Standards this registry is checked against
- RFC 8259 (STD 90) — The JavaScript Object Notation (JSON) Data Interchange Format, T. Bray, Ed., 2017. The IETF Internet Standard for JSON. Obsoletes RFC 7159 and RFC 4627.
- ECMA-404, 2nd edition — The JSON Data Interchange Syntax, Ecma International, 2017. Ecma’s grammar for JSON. A normative reference of RFC 8259; the two define the same syntax.
- The Unicode Standard — The Unicode Standard, Core Specification, The Unicode Consortium, current. Normatively referenced by RFC 8259 for the definition of a character.
- IEEE 754-2019 — IEEE Standard for Floating-Point Arithmetic, IEEE, 2019. Referenced by RFC 8259 §6 as the basis for its interoperability guidance on numbers.
Only standards bodies and peer-reviewed venues are cited. Error strings on this site are observed by executing each parser; the standards above define what the parser is reacting to.