На данный вопрос уже ответили:
Здравствуйте, друзья,
У меня есть функция которая проверяет элементы в массиве и возвращает те, которые прошли проверку.
Как изменить условия чтобы она возвращала те элементы, которые проверку не прошли?
Простая смена == на != не работает
function areIn(oldAra) {
return function(elem) {
var returnArr = [];
for (var i = 0; i < oldAra.length; i++) {
for (var j = 0; j < elem.length; j++) {
if(elem[j] == oldAra[i]) {
returnArr.push(elem[j]);
}
}
}
return returnArr;
};
}
var arr = [1, 2, 3, 4, 5, 6, 7];
var check = areIn(arr);
console.log(check([2, 3, 4, 10])); //[2, 3, 4]
function areIn(oldAra) {
return function(elem) {
var returnArr = [], tmp = {};
for (var i = 0; i < oldAra.length; i++) {
for (var j = 0; j < elem.length; j++) {
if(elem[j] == oldAra[i]) {
tmp[elem[j]] = true;
} else {
if (!tmp[elem[j]]) {
tmp[elem[j]] = false;
}
}
}
}
for (var key in tmp) {
if (!tmp[key]) {
returnArr.push(key);
}
}
return returnArr;
};
}
var arr = [1, 2, 3, 4, 5, 6, 7];
var check = areIn(arr);
console.log(check([2, 3, 4, 10])); //[10]
function areIn(oldAra) {
return function(elem) {
return elem.filter(item => oldAra.indexOf(item) < 0);
};
}
var arr = [1, 2, 3, 4, 5, 6, 7];
var check = areIn(arr);
console.log(check([2, 3, 4, 10])); //[10]
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости