Das Keyword „return“

Verwenden Sie return, um den Wert anzugeben, den die Funktion als endgültigen Wert erzeugen soll. Ergebnis. Wenn der Interpreter eine return-Anweisung erreicht, wird die Funktion, enthält diese Anweisung sofort, und der angegebene Wert wird an Kontext, in dem die Funktion aufgerufen wurde:

const myFunction = function() {
   return 2 + 2;
}

myFunction();
> 4

Eine Funktion, die einen Wert zurückgibt, kann effektiv als die Daten behandelt werden, die sie enthält, ähnlich wie bei einer Variablen:

const myFunction = function() {
   return 2 + 2;
}

myFunction() + myFunction();
> 8

Eine return-Anweisung ohne einen Ausdruck beendet die Funktion und gibt undefined:

const myFunction = function() {
   return;
}

myFunction();
> undefined

Da das Schlüsselwort return das Ende einer Funktion signalisiert, wird jeder Code, der auf eine gefundene return folgt, wird nicht ausgeführt:

const myFunction = function() {
   return true;
   console.log( "This is a string." );
}

myFunction();
> true

Außerdem kann Code, der auf eine return-Anweisung folgt, zu einem Fehler führen, (aber keine Fehlermeldung) bei einigen Browsern Entwicklungskonsolen:

const myFunction = function() {
   return true;
   console.log( "This is a string." );
}
> unreachable code after return statement

myFunction();
> true

Dies gilt wiederum nur für return-Anweisungen, die während der Ausführung der Funktion und nicht von Code, der einer return-Anweisung folgt:

const myFunction = function( myParameter ) {
   if( myParameter === undefined ) {
    return "This is the result.";
   }
   return "This is the alternate result.";
}

myFunction();
> "This is the result."

myFunction( true );
> "This is the alternate result."

„Kurzschluss“ Eine Funktion mit einem frühen return kann prägnanter sein als eine return-Anweisung am Ende einer Funktion. Beispiel: Der Parameter die folgende Funktion bestimmt, ob ein übergebener Wert ein String mit fünf oder mehr Zeichen. Wenn der übergebene Wert kein Stringliteral ist, wird der Code, der zählt, dass die Zeichen unnötig sind, und die Funktion kann ein false zurückgeben. sofort Ergebnis erhalten:

function myFunction( myString ) {
   if( typeof myString !== "string" ) {
    return false;
   }
   if( myString.length >= 5 ) {
    return true;
   } else {
    return false;
   }
}

myFunction( 100 );
> false

myFunction( "St" );
> false

myFunction( "String." );
> true

Pfeilfunktionsausdrücke sind einzigartig, da das Schlüsselwort return impliziert wird, wenn ein Pfeil-Funktionsrumpf verwendet wird. enthält einen einzelnen Ausdruck und keine Blocksyntax:

const myFunction = () => 2 + 2;

myFunction();
> 4

Wenn Sie die Blocksyntax zum Definieren des Pfeil-Funktionstexts verwenden, wird eine explizite return ist erforderlich, auch wenn der Funktionstext nur einen einzigen Ausdruck enthält:

const myFunction = () => { 2 + 2 };

myFunction();
> undefined
const myFunction = () => { return 2 + 2 };

myFunction();
> 4

Wissen testen

Wofür wird return verwendet?

Endergebnis einer Funktion angeben
Den Code zum Anfang der Funktion zurückgeben.