[英]javascript using filter w && not returning desired console.log
/ *我本质上是在尝试使用&&运算符从数组中不仅返回20和40,而且还返回30。 请原谅不良的语义,我在练习中重复了相同的过滤器操作* /
var numbersArray = [20, 25, 30, 40];
var filtering = numbersArray.filter(function resultNewNumbers(newnewNUM){
return (newnewNUM % 20 === 0) && (newnewNUM % 10 === 0);
});
console.log(filtering);
有了这个测试
(newnewNUM % 20 === 0) && (newnewNUM % 10 === 0)
您检查newnewNUM是否为20 和 10的倍数。因此30不是30的倍数。
但是,如果您以这种方式修改测试:
(newnewNUM % 20 === 0) || (newnewNUM % 10 === 0) 30 will emerge
试试这个,即30 % 20 = 0.5
var numbersArray = [20, 25, 30, 40];
var filtering = numbersArray.filter(function resultNewNumbers(newnewNUM){
return (newnewNUM % 20 === 0) || (newnewNUM % 10 === 0);
});
console.log(filtering);
或者如果您想使用下面的&& Try
var numbersArray = [20, 25, 30, 40];
var filtering = numbersArray.filter(function resultNewNumbers(newnewNUM){
return (newnewNUM / 20 > 0) && (newnewNUM % 10 === 0);
});
console.log(filtering);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.