Нет разницы между массивами / объектами, которые вы получаете через JSON, и массивами, созданными в JavaScript. Объекты и массивы JSON анализируются на JavaScript.
И вообще нет необходимости звонить new Array()
.
Кажется, data.qnr
это объект, а не массив. Вам придется перебирать объекты и считать элементы самостоятельно.
Однако, поскольку кажется, что объект представляет собой непрерывные цифровые клавиши, было бы лучше создать правильный вывод (массив) с самого начала.
В ваших комментариях, которые вы написали, вы используете json_encode( $json_array, JSON_FORCE_OBJECT )
для создания вывода JSON. Это преобразует каждый массив, даже числовой, в объекты.
Вместо этого просто используйте json_encode($json_array)
. По умолчанию PHP преобразует ассоциативные массивы в объекты в JSON и числовые массивы в ... ну, массивы;)
Если вы сделаете это, data.qnr
будет работать как положено в JavaScript.
Также обратите внимание, что вместо dataType: 'text'
вы можете установить для него значение json
, и jQuery автоматически проанализирует ответ для вас (поэтому не нужно звонить jQuery.parseJSON
).