Я должен разбирать очень большой массив JSON в Javascipt. Это выглядит следующим образом:Разбор большого массива JSON в Javascript
mydata = [
{'a':5, 'b':7, ... },
{'a':2, 'b':3, ... },
.
.
.
]
Теперь вещь, если я прохожу весь этот объект моего разбора функции parseJSON()
, то, конечно, работает, но он блокирует процесс этой вкладки на 30-40 секунд (в случае массив с 160000 объектами).
В течение всего этого процесса запроса этого JSON с сервера и его разбора я показываю пользователю «загрузку» gif. Конечно, после того, как я вызываю функцию синтаксического анализа, gif также замерзает, что приводит к плохой работе с пользователем. Я думаю, что в этот раз не обойтись, есть способ как-нибудь (по крайней мере) сохранить загрузку gif от замораживания?
Что-то вроде вызова parseJSON() на кусках моего JSON каждые несколько миллисекунд? Я не могу реализовать это, хотя являюсь noob в javascript.
Большое спасибо, я бы очень признателен, если вы могли бы помочь мне здесь.
160 000 объектов действительно много. Вы должны разделить его на стороне сервера – Pinoniq
Вы проверили эту тему? http://stackoverflow.com/questions/1160137/execute-background-task-in-javascript –
Примените разбивку на страницы на стороне сервера, добавьте номера страниц и следующую страницу и т. д. в json, а затем продолжайте называть api для успеха ajax. –