什么是高阶函数_Javascript中哪些是例子

admin 百科 13
高阶函数是接受函数作为参数或返回函数作为结果的函数。它体现“函数可被当作值传递和生成”,常见于数组方法、定时器、防抖、柯里化及Promise链等场景,判断依据是形参含函数类型或返回函数表达式。

什么是高阶函数_Javascript中哪些是例子-第1张图片-佛山资讯网

高阶函数是指**接受函数作为参数,或者返回函数作为结果**的函数。它不是某种特殊类型,而是对函数使用方式的一种描述——核心在于“函数可被当作值来传递和生成”。

接受函数作为参数的高阶函数

这是最常见的情形:把一个函数传进去,让它在合适时机被调用(比如遍历、过滤、转换时)。

  • Array.prototype.map():对数组每个元素执行传入的函数,返回新数组
  • Array.prototype.filter():用传入的函数判断是否保留当前元素
  • Array.prototype.reduce():用传入的累加器函数逐步合并数组值
  • Array.prototype.sort():传入比较函数决定排序逻辑
  • setTimeout() / setInterval():第一个参数就是将在未来执行的函数

返回函数的高阶函数

这类函数本身不直接做事,而是生成并返回一个新的函数,常用于配置、封装或延迟执行。

  • function createMultiplier(n) { return function(x) { return x * n; }; }:返回一个乘以 n 的函数
  • const debounce = (fn, delay) => { ... return function() { ... }; };:防抖函数,返回包装后的新函数
  • curry() 实现(如 _.curry 或手写):把多参数函数转成可分步调用的函数链

既是参数接收者又是返回者:典型工具函数

很多实用函数同时满足两个条件,体现高阶函数的灵活性。

标签: react javascript java 回调函数 工具 ai red

发布评论 0条评论)

还木有评论哦,快来抢沙发吧~