【发布时间】:2021-09-14 17:11:13
【问题描述】:
我是 Javascript 新手,目前正在学习回调函数的基础知识,很难理解为什么下面的代码会返回一系列赔率:
代码:
let numbers = [1, 2, 4, 7, 3, 5, 6];
function isOddNumber(number) {
return number % 2;
}
const oddNumbers = numbers.filter(isOddNumber);
console.log(oddNumbers); // [ 1, 7, 3, 5 ]
我看到.filter 正在调用isOddNumber,但我不确定isOddNumber 如何传递或失败数组中的值。 return number % 2 将 1 或 0 推回 .filter 并解释为真还是假?
这里的任何帮助将不胜感激!
【问题讨论】:
-
filter()将每个元素传递给提供的isOddNumber回调,该回调又返回除以 2(0 或 1)后的余数,过滤器将其评估为布尔值。
标签: javascript arrays filter callback