Я хочу простой способ сравнения двух массивов. Один массив имеет список писем, а другой массив - список электронных писем, которые заполнили форму. Затем я хочу вернуть список людей, которые не заполнили форму. Вот функция, которую я имею, но она работает довольно медленно.Сравнение строк массива пользователей для отображения пустых пользователей
function findMissingUsers() {
var sheet = getSheet();
users = [array of all emails];
completedUsers = [array of emails who completed form];
users.forEach(function (row) {
completedUsers.forEach(function (user) {
if(row.Email != user.Username) {
console.log(row);
}
});
});
}
Просто пытайтесь найти более эффективный способ сделать это.
отсортирован ли 'completedUsers' массив или легко сортируется? Если это так, вы можете попробовать использовать двоичный поиск 'finishedUsers' вместо последовательного поиска, и это должно быть' O (n log m) ', если я не ошибаюсь. – mcon