javascript在数组过滤器内嵌套for循环

米哈(MihaŠušteršič)

我正在解决一个编码练习,遇到了一个有趣的问题。我试图通过参数过滤数组(我事先不知道会有多少个参数)。因此,函数的第一个参数始终是数组,然后是需要过滤的随机整数。

我想我可以通过在过滤器函数内嵌套一个for循环来解决此问题,但到目前为止,它仅按第一个参数进行过滤,而忽略第二个参数。这是由于使用return false/true吗?如果是这样,我该怎么用呢?

function destroyer(arr) {
  var output = [];
  for (var y = 1; y < arguments.length; y++) {
    output.push(arguments[y]);
  }

  function destroy(value) {
    for (var x = 0; x < output.length; x++) {
      if (value === output[x]) {
        return false;
      } else {
        return true;
      }
    }
  }
  return arr.filter(destroy);
}

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

谢谢您的帮助

妮娜·斯科茨(Nina Scholz)

请将return truefor移至函数末尾,因为只有发现了不需要的值时,for循环才应停止。

function destroyer(arr) {
    var output = [];
    for (var y = 1; y < arguments.length; y++) {
        output.push(arguments[y]);
    }

    function destroy(value) {
        for (var x = 0; x < output.length; x++) {
            if (value === output[x]) {
                return false;
            }
        }
        return true;
    }
    return arr.filter(destroy);
}

document.write(destroyer([1, 2, 3, 1, 2, 3], 2, 3));

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

javascript在数组过滤器内嵌套for循环

来自分类Dev

循环内部数组过滤器方法

来自分类Dev

如何使用Javascript数组过滤器过滤0?

来自分类Dev

通过检查多个条件的Javascript数组过滤器

来自分类Dev

用于执行函数的 Javascript 数组过滤器

来自分类Dev

数组中的Javascript嵌套过滤器

来自分类Dev

使用组合的嵌套数组过滤器过滤 JSON 数组

来自分类Dev

部分数组过滤器

来自分类Dev

MuleSoft JSON 数组过滤器

来自分类Dev

PHP在数组过滤器后未从数组中打印MongoID

来自分类Dev

仅返回唯一元素的嵌套数组过滤器

来自分类Dev

数组过滤器,使用键过滤数据

来自分类Dev

数组过滤器更改主数组

来自分类Dev

如何使用数组过滤器在数组内的对象内查找值,然后更改/编辑该值?

来自分类Dev

使用闭包的乘法选择的数组过滤器功能-Javascript

来自分类Dev

如果Javascript中不存在默认数组过滤器对象,如何获取

来自分类Dev

使用数组过滤器方法更改对象序列(Javascript)

来自分类Dev

JavaScript数组过滤器功能仅删除带有拼接的一个元素

来自分类Dev

GPUImage组过滤器

来自分类Dev

Knockout.Js数组过滤器语法

来自分类Dev

数组过滤器的异步或承诺条件

来自分类Dev

数组过滤器返回奇怪的结果

来自分类Dev

具有JSON数组过滤器的Filterpredicate

来自分类Dev

数组过滤器未返回正确的值

来自分类Dev

PHP数组过滤器有多个条件

来自分类Dev

使用keep_if的数组过滤器

来自分类Dev

数组过滤器的异步或承诺条件

来自分类Dev

基于多列的数组过滤器

来自分类Dev

具有绑定值的数组过滤器