У меня есть объект JSON с массивом «обновлений», где каждое «обновление» состоит из отметки времени и сообщения:
updates : {
{
timestamp : 1329505671,
text : 'test1'
},
{
timestamp : 1329505783,
text : 'test2'
}
}
Используя jQuery, я анализирую их в элементах DOM и вставляю их на том же уровне, в порядке их получения. Они предварительно отсортированы на основе моего SQL-запроса в вызове AJAX.
Теперь у меня есть повторяющийся вызов ajax, который проверяет наличие новых обновлений. Если обновление найдено, его нужно вставить в DOM, в соответствующую позицию.
Я не могу предположить, что эти обновления всегда будут самыми последними обновлениями в списке, поэтому мне нужен способ найти, какое DOM-обновление вставлять новое обновление после.
Я планировал создать Map<int, DOMUpdate>
сортов (updates[timestamp] = DOMUpdate
в Javascript).
В этом плане есть пара недостатков:
- Мне нужно было бы найти / создать быстрый алгоритм двоичного поиска для поиска
какая временная метка ставить обновление после.
- У меня не могло быть дублированных меток времени.
Так что мой вопрос: сделал ли кто-то что-то подобное, и если да, то как вы к нему подошли? Пожалуйста, дайте мне знать, если я что-то неясно.