Почему не работает данный код?

174
25 октября 2021, 22:50

Функция должна возвращать отфильтрованный массив из которого будут удалены дополнительные аргументы, передаваемые в функцию вместе с исходным массивом

function destroyer(arr) { 
let destroyTheArray = (arr, ...argsToRemove) => arr.filter(elem => !argsToRemove.includes(elem));   
 
 
} 
 
destroyer([1, 2, 3, 1, 2, 3], 2, 3); // [1,1]

Answer 1

Данный код работает. Просто функция destroyer ничего не возвращает.

Чтобы все заработало, эта функция вообще не нужна:

let destroyTheArray = (arr, ...argsToRemove) => arr.filter(elem => !argsToRemove.includes(elem)); 
 
console.log(destroyTheArray([1, 2, 3, 1, 2, 3], 2, 3)); // [1,1]

Answer 2

function destroyer(arr) { 
  let arr1 = Array.from(arguments).slice(1); 
  let d = []; 
   
  for( let key of arr ){ 
   if( arr1.includes(key) ) continue 
    d.push( key ) 
  } 
 return d; 
} 
 
console.log( destroyer([1, 2, 3, 1, 2, 3], 2, 3) ); // [1,1]

READ ALSO
функция onclick в javascript не срабатывает

функция onclick в javascript не срабатывает

функция onclick в javascript не срабатывает в консоле ошибок нет но при нажатии на кнопку ничего не происходит

156
Как сохранить оставшийся Timeout? JS

Как сохранить оставшийся Timeout? JS

У меня есть свой Дискорд бот, хочу добавить команду, которая дает роль и забирает через определенный срокЯ постоянно редактирую бота и setTimeout...

166
Фильтрация массива объектов по массиву строк

Фильтрация массива объектов по массиву строк

Как вернуть значения из массива объектов, применяя фильтры?

111
Замена текста jQuery методом replace

Замена текста jQuery методом replace

Кто подскажет, почему это не работает?

172