Простите, что я полностью не знаю javascript, но я не могу найти хороший пример того, как сравнить два массива и создать другой массив на основе результатов.Javascript сравнить товары в одном массиве
Я пытаюсь получить список учетных записей пользователей с устройства хранения (использует javascript и обрабатывает функции MOST в порядке) и сравнивает их со статически созданным списком «хороших» пользователей.
с помощью переключателя выписки работает, но я действительно не нравится, и я уверен, что есть намного лучший путь (USERLIST заполняется динамически из устройства, когда я запрашиваю его):
for (userName = 0; userName < userList.length; userName++) {
switch (userList[userName]) {
case 'someuser1':
printf('Username: ' + userList[userName] + ' is good\n');
break;
case 'someuser2':
printf('Username: ' + userList[userName] + ' is good\n');
break;
case 'someuser3':
printf('Username: ' + userList[userName] + ' is good\n');
break;
default:
printf('Username: ' + userList[userName] + ' is NOT good\n');
}
}
I хотел бы создать третий массив «плохих пользователей» и сравнить их с новым массивом «хороших пользователей» и «найти пользователей». Я начал с:
var goodUsers = ["someuser1", "someuser2", "someuser3"];
Однако я не могу понять, правильное сочетание нескольких петель для, если заявления или иначе сравнить два и дать мне массив «плохих пользователей», что я могу перебирать и выполнять действия против.
Любая помощь будет оценена!
Просто имейте в виду, что некоторые старые браузеры не имеют 'Array.indexOf()', поэтому вам может понадобиться прокладка, если вы хотите, чтобы она работала в этих браузерах. – jfriend00
Спасибо, это сработало отлично! Я очень ценю информацию об IndexOf, все, что я видел на ней, не объясняло значение -1 для не найденных элементов, и это очень важно для теста. – nvrmore100