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

非函数调用场景下JavaScript中"=>"的含义是什么?

关于箭头函数作为参数传递的解惑

核心本质:箭头函数就是匿名函数的简化写法

你熟悉的这种写法:

const myFunc = () => "value";

本质是把一个箭头函数赋值给变量,后续通过变量名调用这个函数。而findElement([1, 2, 3, 4], num => num % 2 === 0)里的箭头函数,只是跳过了“赋值给变量”这一步,直接把函数本身作为参数传递给findElement而已,两者完全等价于:

// 先把箭头函数赋值给变量
const isEven = num => num % 2 === 0;
// 再把变量(也就是函数)传给findElement
findElement([1, 2, 3, 4], isEven);

拆解你看到的箭头参数

num => num % 2 === 0这个箭头函数的逻辑很简单:

  • 接收一个参数num
  • 返回num % 2 === 0的结果(布尔值,判断num是不是偶数)

你的findElement函数为什么能运行

你的函数定义function findElement(arr, func) { ... }里的第二个参数func,就是用来接收传递过来的那个箭头函数的。整个执行流程是:

  1. 循环遍历传入的数组arr的每个元素
  2. 把当前元素赋值给num
  3. 调用func(num)——也就是调用那个判断偶数的箭头函数,把当前元素传进去,得到true或false
  4. 如果func(num)返回true(找到偶数),立刻返回这个元素,函数终止

这种把函数作为参数传递的模式,在JavaScript里叫回调函数,很多原生数组方法(比如arr.filter()、arr.map())都是基于这个逻辑工作的,箭头函数只是让这种写法更简洁而已。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.18 23:22:06