Nach Angaben der Spezifikation der Klasse JSONArray :
- Ein zusätzliches , (Komma) kann unmittelbar vor der schließenden Klammer stehen.
- Der Nullwert wird eingefügt, wenn es eine , (Komma) Elision gibt.
So wie ich es verstehe, sollte es also erlaubt sein, zu schreiben:
[0,1,2,3,4,5,]
Es kann jedoch vorkommen, dass einige Parser die 7 als Elementanzahl zurückgeben (wie IE8, worauf Daniel Earwicker hingewiesen hat), anstatt der erwarteten 6.
編集しました。
Ich fand dies JSON-Prüfer die eine JSON-Zeichenkette gegen RFC 4627 (Der Medientyp application/json für JavaScript Object Notation) und gegen die JavaScript-Sprachspezifikation. Hier wird ein Array mit einem nachgestellten Komma nur für JavaScript und nicht für die RFC 4627-Spezifikation als gültig angesehen.
In der RFC 4627-Spezifikation heißt es jedoch, dass:
2.3. Arrays
Eine Array-Struktur wird durch eckige Klammern dargestellt, die Nullen umgeben oder mehrere Werte (oder Elemente). Die Elemente werden durch Kommas getrennt.
array = begin-array [ value *( value-separator value ) ] end-array
Für mich ist das wieder ein Interpretationsproblem. Wenn Sie schreiben, dass Elemente werden durch Kommas getrennt (ohne etwas über Sonderfälle, wie das letzte Element, zu sagen), könnte es auf beide Arten verstanden werden.
P.S. RFC 4627 ist kein Standard (wie ausdrücklich angegeben) und wurde bereits durch RFC 7159 (ein vorgeschlagener Standard) überholt. RFC 7159