JavaScript基础算法——摧毁数组

100 阅读1分钟

要求:

实现一个摧毁(destroyer)函数,第一个参数是待摧毁的数组,其余的参数是待摧毁的值。

样本:

destroyer([1, 2, 3, 1, 2, 3], 2, 3) 应该返回 [1, 1].

destroyer([1, 2, 3, 5, 1, 2, 3], 2, 3) 应该返回 [1, 5, 1].

destroyer([3, 5, 1, 2, 2], 2, 3, 5) 应该返回 [1].

destroyer([2, 3, 2, 3], 2, 3) 应该返回 [].

destroyer(["tree", "hamburger", 53], "tree", 53) 应该返回 ["hamburger"].

解法: 

function destroyer(arr) {
  var arr_arg = arguments; 
  for(var i=1;i<arr_arg.length;i++){
    arr = arr.filter(function(val){
      return val!==arr_arg[i];
    });
  }
  return arr;
}

destroyer([1, 2, 3, 1, 2, 3], 2, 3);

 

创作打卡挑战赛

赢取流量/现金/CSDN周边激励大奖