我不明白什么是电话支持,它是自己为阵列提供操作还是我不知道从哪里开始
function mySelect (arr, cb) {
var selected = [];
arr.forEach(function(ele, i, ar) {
if (cb(ele, i, ar)) {
selected.push(ele);
}
});
return selected;
}
mySelect([1,2,3,4,5,6], function(ele, i, arr) {
return (ele % 2 === 0);
});
答案 0 :(得分:0)
您的代码通过代码返回数组中的偶数:
ele % 2 === 0 //(test if even)
即。如果ele(或数字)除以2并且没有余数
function mySelect (arr, cb) // cb = callBackFunction
{
var selected = [];
arr.forEach(function(ele, i, ar)
{
if (cb(ele, i, ar)) // call back here tests if even
{
selected.push(ele);
}
});
return selected;
}
var selected = mySelect([1,2,3,4,5,6], function(ele, i, arr)
{
return (ele % 2 === 0);
});
console.log(selected);
没有回调函数的相同代码,但在main函数中嵌入了均匀测试将是:
function mySelect (arr) // no callBack Function
{
var selected = [];
arr.forEach(function(ele, i, ar)
{
if (ele % 2 === 0) // tests if even
{
selected.push(ele);
}
});
return selected;
}
var selected = mySelect([1,2,3,4,5,6]);
console.log(selected);
我希望这会有所帮助:)