JavaScript 中的函数类型

函数在 JavaScript 中至关重要。它们可以组织代码,减少重复,并使程序易于维护。

可以把函数想象成一台机器。你提供输入,它执行任务,然后给你输出。

以下是你需要了解的不同类型的函数:

• 函数声明 (Function Declaration) 这些是有名称的函数。它们支持变量提升 (hoisting)。 示例:

function greet() {
console.log("Hello World");
}

• 函数表达式 (Function Expression) 你将一个函数存储在变量中。 示例:

const greet = function() {
console.log("Hello");
};

• 匿名函数 (Anonymous Function) 没有名称的函数。它们通常运行一次后即消失。

• 箭头函数 (Arrow Function) ES6 中引入的简写语法。在 React 中非常常见。 示例:

const add = (a, b) => a + b;

• 参数与实参 (Parameters and Arguments) 参数 (Parameters) 是占位符。实参 (Arguments) 是你传递的实际值。 示例:

function greet(name) { // name 是一个参数 (parameter)
console.log(name);
}
greet("John"); // "John" 是一个实参 (argument)

• 返回函数 (Return Function) 将值返回给调用者的函数。这让你能够复用结果。

• 回调函数 (Callback Function) 作为参数传递给另一个函数的函数。

• 高阶函数 (Higher Order Function) 接收或返回另一个函数的函数。

• IIFE (立即调用函数表达式) 一经创建就立即运行的函数。

• 构造函数 (Constructor Function) 用于通过一个模板创建多个对象。

• 递归函数 (Recursive Function) 调用自身的函数。

• 生成器函数 (Generator Function) 使用 yield 关键字逐个创建值。

• 异步函数 (Async Function) 用于 API 调用等任务。它允许你使用 await 关键字来处理等待期。

• 嵌套函数 (Nested Function) 定义在另一个函数内部的函数。内部函数可以访问外部函数的变量。

• 纯函数 (Pure Function) 对于相同的输入,始终产生相同输出的函数。它不会改变外部数据。

• 使用剩余参数的函数 (Rest Parameter Function) 使用三个点 (...) 来接收任意数量的参数。它就像一个购物篮,可以装下任意数量的物品。

Source: https://www.geeksforgeeks.org/javascript/functions-in-javascript/ Optional learning community: https://dev.to/annapoo/types-of-functions-in-javascript-105