Спасибо. В json записывается null, что не то же самое что undefined в массиве. При обратном парсинге выйдет массив, не равнозначный изначальному. То есть узнать был ли где-то null реально, или ключ вообще не был задан - не возможно.
Что-то его не доделали, может пропуск значения между запятыми бы оставили.
может пропуск значения между запятыми бы оставили.
Тогда это не json будет. Потому что пропуск, это что? Это undefined, а в json его нет. Да и вообще, объект уместнее, всё ровно небось for..in-ом проходишь:
var obj = {};
obj[10] = true;
alert( JSON.stringify(obj) );
Последний раз редактировалось Sweet, 31.08.2014 в 20:30.
Спасибо. В json записывается null, что не то же самое что undefined в массиве. При обратном парсинге выйдет массив, не равнозначный изначальному. То есть узнать был ли где-то null реально, или ключ вообще не был задан - не возможно.
Что-то его не доделали
json разрабатывали как универсальный способ передачи данных, без привязки конкретно к javascript. Потому и нельзя "оставить пропуск", как и нельзя undefined, т.к. в других языках undefined совсем не такой няшный, удобный и простой как в js.