În conformitate cu caietul de sarcini JSONArray :
- Un extra, (virgulă) poate apărea chiar înaintea brațului de închidere.
- Valoarea nulă va fi inserată atunci când există, (comma) elision.
Deci, așa cum înțeleg, ar trebui să li se permită să scrie:
[0,1,2,3,4,5,]
Dar s-ar putea întâmpla ca unii parseri să returneze cei 7 ca număr de itemi (cum ar fi IE8, după cum a subliniat Daniel Earwicker) în loc de așteptările 6.
editat:
Am găsit acest Validator JSON care validează un șir JSON împotriva RFC 4627 (tipul de aplicație/json pentru jurnalul de obiect JavaScript) și împotriva specificației limbajului JavaScript. De fapt, o matrice cu o virgulă este considerată validă doar pentru JavaScript și nu pentru caietul de sarcini RFC 4627.
Totuși, în specificația RFC 4627 se menționează că:
2.3. Matricile
O structură de matrice este reprezentată sub formă de paranteze pătrate care înconjoară zero
sau mai multe valori (sau elemente). Elementele sunt separate prin virgule.
array = începutul matricei [value * (value-separator value)] end-array
Pentru mine aceasta este din nou o problemă de interpretare. Dacă scrieți Elementele sunt separate prin virgule (fără a spune ceva despre cazuri speciale, cum ar fi ultimul element), ar putea fi înțeleasă în ambele sensuri.
P.S. RFC 4627 isn't a standard (as explicitly stated), and is already obsolited by RFC 7159 (which is a proposed standard) RFC 7159