javascript回调函数选择

约翰·乔

因此,基本上我需要使用我在filter函数中实现的每个函数,以便filter函数仅返回大于2的myArray中的项。im完全卡住了。

var myArray = [1, 2, 3, 4, 5];

function each(collection, callback) {
    for (var i = 0; i < collection.length; i++) {
        callback(collection[i]);
    }
}

function filter(collection, test) {
    var returnAr = [];
    for (var i = 0; i < collection.length; i++) {
        if (test(collection[i])) {
            returnAr.push(collection[i])
        }
    }
    //instead of using "for(var i  = 0; i < collection.length; i++)"
    // how can i use the each function i implemented above?

    return returnAr;
}

filter(myArray, function(n) {
    return n > 2;
}
slebetman

each函数通过将数组中的每个项目作为函数参数传递来调用其回调。因此,正确的调用方式是:

each(collection, function(item) {
    if (test(item)) {
       // ...
    }
}

Javascript并没有提供一种很好的自记录方式来指定函数签名[1]。通常,这可以通过阅读API文档来解决。但是,如果这是您自己的代码,并且没有提供API文档,那么您需要查看如何调用回调。在这种情况下,它称为:

callback(collection[i]);

这就告诉我们回调函数应该接受一个参数,该参数是数组中的一个项目。

[1]:也称为原型,不,不是在javascript的“ prototype”一词中,而是在C的“ prototype”一词中

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Javascript回调函数的用法

来自分类Dev

嵌套的JavaScript回调函数

来自分类Dev

javascript回调函数同步

来自分类Dev

Javascript匿名回调函数

来自分类Dev

单独线程上的javascript回调函数

来自分类Dev

将JavaScript的.bind()与回调函数集成

来自分类Dev

JavaScript回调函数未按预期触发

来自分类Dev

性能损失JavaScript回调函数

来自分类Dev

用作回调的Javascript函数触发顺序

来自分类Dev

JavaScript:自定义回调函数

来自分类Dev

Javascript异步/等待回调函数

来自分类Dev

JavaScript函数在回调完成之前完成

来自分类Dev

javascript回调函数,变量映射

来自分类Dev

Javascript:setTimeout,for循环和回调函数

来自分类Dev

JavaScript回调函数未按预期触发

来自分类Dev

JavaScript回调函数不起作用

来自分类Dev

在JavaScript函数上创建回调

来自分类Dev

如何使回调函数在Javascript中同步?

来自分类Dev

javascript / jQuery中的回调函数参数

来自分类Dev

JavaScript中的回调函数如何工作

来自分类Dev

JavaScript:突破了回调函数

来自分类Dev

性能损失JavaScript回调函数

来自分类Dev

多个函数之间的javascript回调混淆

来自分类Dev

ajax请求中的Javascript回调函数

来自分类Dev

JavaScript setInterval 在定义函数之前回调?

来自分类Dev

对 Javascript 回调函数/承诺的困惑

来自分类Dev

未记录回调函数的输出(JavaScript)

来自分类Dev

javascript中带箭头函数的回调

来自分类Dev

spring JavaScript Promises 回调函数参数