Javascript 需要帮助编写一个函数,该函数接受一个数组和一个元素,并返回一个数组,其中删除了所有出现的元素

Javascript 需要帮助编写一个函数,该函数接受一个数组和一个元素,并返回一个数组,其中删除了所有出现的元素,javascript,arrays,for-loop,Javascript,Arrays,For Loop,这就是我尝试过的,它总是返回一个只有一个值的数组,即元素。我也不确定.splice是否是从阵列中删除元素的正确方法。也许我需要一个新的阵列。只把我想要的东西放进去 function remove(array, element) { for (var i = 0; i < array.length; i = i + 1) { if (array[i] === element) { array = array.splice(i, 1);

这就是我尝试过的,它总是返回一个只有一个值的数组,即元素。我也不确定.splice是否是从阵列中删除元素的正确方法。也许我需要一个新的阵列。只把我想要的东西放进去

function remove(array, element) {
    for (var i = 0; i < array.length; i = i + 1) {
        if (array[i] === element) {
            array = array.splice(i, 1);
        }
    }
    return array;
  }
函数删除(数组、元素){
对于(变量i=0;i
已更新以删除阵列中元素的所有实例

   function remove(array, element) {

      var index = array.indexOf(element)
      array.splice(index,1)

      if (array.indexOf(element) > -1){
        return remove(array,element)
      }

      return array;
    }

为什么不直接使用
array.filter(函数(a){returna!==element;})
?还有一个。
数组。拼接
将修改
数组
本身;它返回的是另一个包含已删除项的数组。(请参阅)此外,在遍历数据结构时修改数据结构的大小可能有点危险。