Всем добрый вечер.
Такая проблема - получаю данные с сервера, записываю , через время опять приходят данные ( через setInterval(messages, 3000); ) , и выводятся те же самые сообщения ! Нужно написать проверку, это я понимаю и решил спросить совета.
Я хочу использовать "Ассоциативный массив" . Сначала записать туда данные , а потом сравнивать по ключу. Но я не совсем понимаю как сделать. У меня приходят данные с полями data.user_id, data.messages, data.datetime.
Я делаю проверку по user_id и datetime. Вот что вышло ...
var messagesData;
var mesAll = {};
function messages() {
$.ajax({
type: 'GET',
url: urls + '/messages',
success: function (data) {
data.forEach(
function (obj) {
messagesData = obj.user_id;
if ( !mesAll[obj.user_id] & !mesAll[obj.datetime] ) //если нет такого id и datetime - то добавить !
resMess(obj); // вывод содержимого
}
)
},
error: function (data, status) {
console.error(data, status);
}
});
}
messages();
//setInterval(messages, 3000);