你应该了解的 3 个核心 JavaScript 概念(函数)

2025-06-09

你应该了解的 3 个核心 JavaScript 概念(函数)

在 JavaScript 中,函数是“一等公民”对象,这意味着它们可以访问并被传递给函数。但这究竟意味着什么?“一等公民”函数与高阶函数或回调函数有何不同?

这些术语并不互相排斥,但我认为探索其中的细微差别很重要。

一等公民 vs 高阶 vs 回调

  1. 一等公民:在 JavaScript 中,函数被视为一等对象。我已经在这篇文章中讨论过为什么函数是对象。一等公民对象是指被视为变量的对象,这意味着它们可以:

    1. 存储到变量
    2. 作为参数传递(作为回调)
    3. 从函数返回
  2. 高阶函数:这指的是接受函数作为参数或返回函数作为结果的函数

  3. 回调函数:回调函数是作为参数传递给函数的函数。

请记住:

  1. 高阶函数可以接受回调函数作为参数
  2. 高阶函数和回调函数都是一等函数。这是因为 JavaScript 将函数视为一等对象。

因为这三个术语相互交织,所以我在下面提供了讨论这三个术语的链接,而不是为每个术语写一篇文章:


let arr = [1,2,3,4,5]

const firstClass = (num) => {
  return num * num
}

const higherOrder = (array, callback) => {
  let newArray = []
  for(let i = 0; i < array.length; i++){
    newArray.push(callback(array[i]))
  }
  console.log(newArray)
}

higherOrder(arr, firstClass) // [ 1, 4, 9, 16, 25 ]
Enter fullscreen mode Exit fullscreen mode

还不明白吗?留言告诉我吧。我很乐意进一步解释!

鏂囩珷鏉ユ簮锛�https://dev.to/jasterix/3-core-javascript-concepts-functions-j31
PREV
在第一份工作之前获得项目经验的最佳方法是什么?
NEXT
如何在 useEffect 中使用异步函数?