【发布时间】:2021-10-15 18:14:31
【问题描述】:
问题是:
“在标有“在此处添加代码”的地方为函数 func1 和 func2 添加代码,以实现所需的控制台日志。”
function filterArray(array, callback) {
const newArray = [];
for (let i = 0; i < array.length; i += 1) {
if (callback(array[i])) newArray.push(array[i]);
}
return newArray;
}
const arrOfNums = [1, 2, 3, 4, 5];
function func1(num) {
// ADD CODE HERE
}
function func2(num) {
// ADD CODE HERE
}
console.log(filterArray(arrOfNums, func1)); // should log: [2, 4]
console.log(filterArray(arrOfNums, func2)); // should log: [1, 3, 5]
在func1中我试过了:
if (num % 2 === 0) {
num = num;
} else {
num = null;
}
在func2中我试过了:
if (num % 2 !== 0) {
num = num;
} else {
num = null;
}
我不确定如何解决这个问题。我的解决方案不起作用,并且 console.log 调用都返回了空数组...
提前谢谢你!
【问题讨论】:
-
除了
filter的回调函数必须为每个值返回一个布尔值之外,您的函数不会返回任何内容。 -
谢谢。我会尝试多玩一点......
标签: javascript arrays callback