首页 > 解决方案 > 如何在 forEach 中使用箭头函数?

问题描述

我正在研究 Javascript 中的箭头函数。
我以两种方式使用 forEach。
没有箭头的可以用,带箭头的不行。

你能告诉我为什么吗?

    let ary = [1,2,3,4,5];

    function callback (i) {
        console.log(i);
    }

    // Working
    ary.forEach(callback);

    // Not working
    ary.forEach((i)=>callback);

标签: javascriptarraysforeachcallbackarrow-functions

解决方案


在“非工作”代码中,您传递了一个函数,该函数返回一个函数 ( callback) 给 forEach。callback本身永远不会被调用。

这实际上会调用该函数,但它与在第一个示例中直接将回调直接传递给 forEach 基本相同:

ary.forEach((i) => callback(i));

请参阅箭头函数的文档


推荐阅读