📜  什么是 JavaScript 中的一等公民?

📅  最后修改于: 2022-05-13 01:56:32.397000             🧑  作者: Mango

什么是 JavaScript 中的一等公民?

如果任何编程语言能够将函数视为值,将它们作为参数传递并从另一个函数返回一个函数,那么就说该编程语言具有一等函数,并且这些函数在该编程语言中被称为一等公民.

函数在 JavaScript 中非常重要和强大。 JavaScript 具有成为具有一等函数的语言所需的所有能力或特性,因此函数被视为一等公民。让我们看看作为一等公民的所有功能。

1.将函数视为值的能力: JavaScript中的函数可以被视为值,即函数可以作为值存储在变量中。

Javascript


Javascript


Javascript


输出:

Welcome to GeeksforGeeks!

在上面的例子中,一个函数存储在一个变量greet中,带括号的变量,即greet()调用函数体并在控制台中显示输出。匿名函数用于将该函数用作值的地方。

2. 将函数作为参数传递的能力: JavaScript 中的函数也可以作为参数传递给另一个函数。让我们看一个例子——

Javascript


输出:

Welcome
Teacher
Welcome
Student

在上面的例子中,当我们将函数greet()中的参数作为teacher传递时,它传递了函数teacher()的主体并返回字符串“Teacher”,但是当我们将函数greet()中的参数传递为student时,它传递了函数体student()并返回字符串“Student”。

3. 从另一个函数返回一个函数的能力:现在,让我们看一个在 JavaScript 中从另一个函数返回一个函数的例子——

Javascript


输出:

Welcome to GeeksforGeeks!

在这里,我们使用双括号来调用返回的函数,因此我们使用了greet()()。单括号将调用函数本身而不调用其返回的函数。我们也可以通过将函数存储在这样的变量中来做到这一点 -

var func = greet();
func();

返回函数的函数称为高阶函数

正如我们所看到的,JavaScript 具有成为具有一等函数的编程语言所需的所有能力和特性,因此 JavaScript 中的函数被称为一等公民。