From 4ab365b110f2f1f2b736326b7059244a32115089 Mon Sep 17 00:00:00 2001 From: Florian Merz Date: Thu, 11 Feb 2021 14:45:38 +0100 Subject: unslug de: move --- files/de/glossary/first-class_function/index.html | 101 ++++++++++++++++++++++ 1 file changed, 101 insertions(+) create mode 100644 files/de/glossary/first-class_function/index.html (limited to 'files/de/glossary/first-class_function/index.html') diff --git a/files/de/glossary/first-class_function/index.html b/files/de/glossary/first-class_function/index.html new file mode 100644 index 0000000000..05ac712188 --- /dev/null +++ b/files/de/glossary/first-class_function/index.html @@ -0,0 +1,101 @@ +--- +title: Funktion erster Klasse +slug: Glossary/Funktion_erster-Klasse +translation_of: Glossary/First-class_Function +--- +

Funktionen, die wie jede andere Variable behandelt werden, bezeichnet man als Funktionen erster Klasse.

+ +

In einer Programmiersprache, die über Funktionen erster Klasse verfügt, kann so eine Funktion als Argument anderen Funktionen übergeben werden, als Wert einer Variable zugewiesen, oder von einer anderen Funktion zurückgegeben werden.

+ +

Beispiel | Zuweisung einer Funktion an eine Variable

+ +

JavaScript

+ +
const foo = function() {
+   console.log("foobar");
+}
+// Aufruf der Funktion über die Variable.
+foo();
+
+ +

Wir weisen der Variable 'foo' eine anonyme Funktion, die den String "foobar" in der Konsole ausgibt, zu. Dann rufen wir diese Funktion über die Variable auf, indem wir ein Paar Klammern an das Ende hinzufügen. 

+ +
+

Auch wenn die Funktion benannt ist, kann der Name der Variable, der sie zugewiesen ist, benutzt werden, um die Funktion aufzurufen. Funktionen zu benennen wirkt sich nicht auf die Weise, wie sie aufgerufen wird aus, kann aber beim Debuggen hilfreich sein

+
+ +

Beispiel | Übergeben einer Funktion als Argument

+ +

JavaScript

+ +
function sagHallo() {
+   return "Hallo, ";
+}
+function gruessen(gruss, name) {
+  console.log(gruss() + name);
+}
+// Übergebe `sagHallo` als Argument an die `gruessen` Funktion.
+gruessen(sagHallo, "JavaScript!");
+
+ +

Wir übergeben unsere sagHallo() Funktion als ein Argument an die gruessen() Funktion. Auf diese Art behandeln wir die Funktion als Wert.

+ +
+

Die Funktion, die wir als Argument einer anderen Funktion übergeben wird als Callback function bezeichnet. sagHallo() ist eine Callback function.

+
+ +

Example | Return a function

+ +

JavaScript

+ +
function sayHello() {
+   return function() {
+      console.log("Hello!");
+   }
+}
+
+ +

In this example; We need to return a function from another function - We can return a function because we treated function in JavaScript as a value.

+ +
+

A function that returns a function called Higher-Order Function

+
+ +

Back to our example; Now, we need to invoke sayHello function and its returned Anonymous Function. To do so, we have two ways:

+ +

1- Using a variable

+ +
const sayHello = function() {
+   return function() {
+      console.log("Hello!");
+   }
+}
+const myFunc = sayHello();
+myFunc();
+
+ +

This way, it returns the Hello! message.

+ +
+

You have to use another variable. If you invoked sayHello directly, it would return the function itself without invoking its returned function.

+
+ +

2- Using double parentheses

+ +
function sayHello() {
+   return function() {
+      console.log("Hello!");
+   }
+}
+sayHello()();
+
+ +

We are using double parentheses ()() to invoke the returned function as well.

+ +

Learn more

+ +

General knowledge

+ + -- cgit v1.2.3-54-g00ecf