Tôi đang sử dụng Firefox 3.5b4.JSON.parse() có yêu cầu trích dẫn kép không?
cảnh báo này [đối tượng Object], [đối tượng Object]:
var jsonString = '[{"foo": "one", "bar": 1}, {"foo": "two", "bar": 2}]';
var jsonObjects = JSON.parse(jsonString);
alert(jsonObjects);
Điều này cảnh báo một chuỗi rỗng, ví dụ: jsonObjects là null.
var jsonString = "[{'foo': '1', 'bar': 2}, {'foo': '3', 'bar': 4}]";
var jsonObjects = JSON.parse(jsonString);
alert(jsonObjects);
Tương tự như vậy đối với tên thuộc tính không được kiểm soát, tức là {foo: '1', bar: 2}.
Điều gì đang xảy ra? Tôi có thiếu một cái gì đó hiển nhiên, hoặc là có một quy tắc về đôi và đơn trích dẫn với JSON.parse? Cả ba phiên bản đều hoạt động OK với eval.
Vị trí cấu trúc trên cùng phải là đối tượng ở đâu? [Tài liệu này] (http://www.ietf.org/rfc/rfc4627.txt?number=4627) đưa ra ví dụ về một mảng và [json.org] (http://json.org/) không dường như không xác định yêu cầu này. – Brendon
http://stackoverflow.com/a/4201631/977939 điều này có giải thích: từ dự trữ. – jpillora