You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将JavaScript箭头函数改写为普通函数?附代码示例求助

箭头函数转普通函数的正确写法(剪刀石头布代码示例)

你写的selectionButtons.forEach(selectionButton = function() {是错误的,forEach的回调函数应该使用function(参数)的声明形式,而非赋值符号。

以下是将原代码中所有箭头函数替换为普通函数的完整正确写法:

selectionButtons.forEach(function(selectionButton) {
    selectionButton.addEventListener('click', function(e) {
        const selectionName = selectionButton.dataset.selection;
        const selection = SELECTIONS.find(function(selection) {
            return selection.name === selectionName;
        });
        makeSelection(selection);
    });
});

转换关键说明:

  • 箭头函数param => { ... }对应普通函数的function(param) { ... }结构,参数必须放在function的括号内
  • 原代码中find的箭头函数属于单表达式返回场景,转成普通函数时必须显式添加return语句(箭头函数省略大括号时会自动返回表达式结果,普通函数无此特性)
  • 此示例中无需处理this指向问题,因为原箭头函数未依赖this,均使用外部作用域变量

内容的提问来源于stack exchange,提问作者Peterman

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 07:35:27