Делаю загрузку изображений на сервер. На стороне клиента собираю данные о загружаемых файлах в массив и отправляю этот массив на сервер. Как удалить дубликаты из массива, в случае когда пользователь повторно загрузил некоторые файлы изображений? Или же заранее собирать только уникальные данные в массиве.
// загрузка изображения
var file_upload = $('#file_upload');
var arr_files = [];
file_upload.on('change', function(){
if((file_upload[0].files).length !=0){
$.each(file_upload[0].files, function(i, file){
//добавление в массив
arr_files.push(file);
});
}
// Далее отправка через ajax
//......
//......
});
Массив файлов выглядит примерно так:
Нашел в интернете такое решение:
let set = new Set(arr_files.map(JSON.stringify));
let arr_files_uniq = Array.from(set).map(JSON.parse);
Но почему-то удаляет из массива все элементы, кроме первого.