9 ms·
JSON: The JavaScript subset that isn't
- bartl 14y agoYawn. JSON isn't valid Javascript, but it sure is a valid Javascript data structure. I often use code like echo "var d = ", json_encode($data), ";\n"; and be 100% sure I'm generating perfectly valid Javascript, no matter what is in $data. (Well, apart from circular references, and "resources".)
- kennu 14y agoI think the article's point was that Unicode characters U+2028 and U+2029 are illegal in JavaScript string literals. Yet, the JSON specification (RFC 4627) officially allows them to exist in JSON string literals: "All Unicode characters may be placed within the quotation marks except for the characters that must be escaped: quotation mark, reverse solidus, and the control characters (U+0000 through U+001F)." So with U+2028 or U+2029 you can construct a valid JSON object that JavaScript can't parse.