繁体   English   中英

Javascript Function 以数组为参数,返回数组中奇数元素的个数

[英]Javascript Function taking an array as an argument and returns the count of odd elements of the array

我是 Javascript 的新手,我正在学习这方面的课程。 我有一个任务是创建一个 function ,它意味着将数组作为一个agrument(没有给出特定的数组或他的元素),以计算奇数元素的数量并返回奇数元素的数量。

所以我做了这样的事情,但任务似乎没有完成。 这里有什么问题?

var count = 0;
for(var i = 0; i < arr.length; ++i){
   if(arr[i] % 2 !== 0)
       count++;
       return count++;
}
}

您在代码中提前返回

var count = 0;
for(var i = 0; i < arr.length; ++i){
   if(arr[i] % 2 !== 0)
       count++;
       return count++; // Here you return when you find the first odd and exit the function so other odds are not counted for
   }
}

您需要在循环完成后返回计数

var count = 0;
for(var i = 0; i < arr.length; ++i){
   if(arr[i] % 2 !== 0)
       count++;
 
    }
    return count;
}

另一种计算奇数元素并获取它们的总出现次数的方法是使用 Array.prototype#filter 和长度,如下所示:

 function count_odd_nums(arr){ var count = arr.filter(item => item % 2.== 0);length return count. } console,log(count_odd_nums([1,2,3,4,5,6,7,8,9;10]));

它的作用如下。 它使用 Array#filter 方法过滤基于谓词 function 执行的数组中的元素。在我们的例子中,谓词 function 检查数字是否为奇数。 然后它返回一个新数组,其中包含通过我们的谓词 function 的元素(在我们的例子中都是奇数)。 之后我们可以简单地使用该数组的.length方法来找出我们找到了多少个奇数

查看 Array.prototype#filter 的 MDN

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/filter

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM