Optionaler JavaScript-Funktionsparameter
Das Initialisieren des optionalen Funktionsparameters erleichtert die Implementierung des Codes, verbessert die Lesbarkeit des Codes und vereinfacht den Code, ohne Fehler und Wiederholungen zu erhalten. Es ermöglicht die Anpassung des Codes durch Hinzufügen zahlreicher Argumente und Parameter.
In diesem Artikel wird erläutert, wie optionale Funktionsparameter in JavaScript verwendet werden.
Optionaler JavaScript-Funktionsparameter
Parameter sind die Definitionen, die zum Definieren von Funktionen verwendet werden. In JavaScript verwenden wir zwei Hauptparameter in einem Funktionsaufruf. Die obligatorischen und optionalen Parameter.
Es ist ein Muss, die obligatorischen Parameter zu übergeben; Andernfalls wird ein Fehler ausgegeben. Es gibt undefiniert
zurück, aber in optionalen Parametern, wenn keine Parameter oder undefiniert übergeben werden, wird es auf den Standardwert initialisiert.
Bei der Deklaration optionaler Funktionsparameter können wir hauptsächlich drei Ansätze verfolgen.
- Verwendung von undefinierter Eigenschaft
- Verwenden von Argumentvariablen
- Verwenden des logischen ODER-Operators
Undefinierte Eigenschaft verwenden
Beim Aufruf von Funktionen in JavaScript können wir Parameter weglassen und die restlichen Parameter mit dem Wert undefined
füllen.
Code:
function number(num1, num2) {
if (num1 === undefined) {
num1 = 2;
}
if (num2 === undefined) {
num2 = 2;
}
return num1 * num2;
}
console.log(number(5, 6));
console.log(number(5));
Ausgang:
30
10
Im obigen Snippet wird die Funktion number()
zweimal aufgerufen. Zunächst wurden der Funktion zwei Parameter für num1
und num2
übergeben und nur ein Parameter für num1
zugewiesen.
Obwohl der Code gut funktioniert und die Ausgabe beim ersten Aufruf als 30
anzeigt, gibt er beim zweiten Aufruf den Wert 10
an, nachdem der angegebene Wert als num1
betrachtet wurde. Wenn die Funktion prüft, ob die Variable number
undefiniert ist oder nicht, bleibt der Wert von num2
auf 2
.
Bei dieser Methode können wir jedoch nur das letzte Argument optional machen und nicht den ersten, mittleren oder eine Kombination von Parametern optional machen.
Argumentvariable verwenden
Argumente sind eingebaute Objekte in JavaScript-Funktionen. Es gibt ein Array von Parametern zurück, wenn die Funktion aufgerufen wird.
Die Länge dieses Arrays bezieht sich auf die Anzahl der übergebenen Parameter. Unter Verwendung einer bedingten Anweisung überprüft es die Anzahl der übergebenen Parameter und übergibt Standardwerte anstelle von undefinierten Parametern.
Dann können wir alle Parameter herausfinden, während wir die Argumentobjekte durchlaufen.
Code:
function number(num1, num2) {
if (arguments.length == 0) {
num1 = 1;
num2 = 2;
}
if (arguments.length == 1) {
num2 = 2;
}
return num1 * num2;
}
console.log(number(10, 15)); // first calling
console.log(number(10)); // second calling
Ausgang:
150
20
Gemäss obigem Snippet prüft die Funktion number()
die Anzahl der verwendeten Parameter in der Eigenschaft arguments.length
. Erhält das Ergebnis 0
, werden der Funktion keine Parameter übergeben; wenn es 1
bekommt, wird nur der Parameter num1
übergeben.
Danach wird die Funktion number()
zweimal aufgerufen, indem zwei und ein Parameter abgerufen werden. Auch beim ersten Aufruf funktionierte es einwandfrei und zeigte die Ausgabe als 150
an; Beim zweiten Aufruf wurde das Ergebnis als 20
angezeigt, nachdem 2
für num2
zugewiesen wurde, da arguments.length
gleich 1
ist.
Verwenden Sie den logischen ODER
(||
)-Operator
Bei dieser Methode ist der optionale Parameter ein logisches OR
(||
) mit dem Standardwert innerhalb des Hauptteils der Funktion. Hier gibt der Kurzschluss-ODER-Operator true
zurück, wenn die linke Seite des linken Arguments true
ist; andernfalls prüft es und gibt true
zurück, wenn das rechte Argument true
ist.
Die Verwendung des OR-Operators ist eine einfache Methode zum Erstellen flexibler und lesbarer optionaler Argumente und ermöglicht eine einfache Verwaltung optionaler Parameter. Darüber hinaus sind False
, 0
, null
, undefined
, die leere Zeichenfolge " "
und NaN
alle ungültige Argumente.
Code (Erstaufruf):
function multiply(num1, num2) {
var num3 = num2 || 2;
return num1 * num3;
}
console.log(multiply(10, 20));
Ausgang:
200
Code (Zweitanruf):
function multiply(num1, num2) {
var num3 = num2 || 2;
return num1 * num3;
}
console.log(multiply(10));
Ausgang:
20
Im obigen Beispiel wurde eine Funktion namens multiply
mit zwei Parametern deklariert, num1
und num2
werden zweimal aufgerufen. Hier müssen wir die beiden Funktionen separat aufrufen.
Beim ersten Aufruf wurden zwei Parameter übergeben und die Ausgabe als 200
angezeigt, während beim zweiten Aufruf nur ein Parameter übergeben und das Ergebnis als 20
angezeigt wurde. Beim zweiten Aufruf wird, da num2
undefiniert ist, stattdessen 2
zugewiesen.
Wie bei der undefinierten Eigenschaftsmethode können wir nur das letzte Argument optional machen und nicht den ersten, mittleren oder eine Kombination von Parametern optional machen.
Abschluss
Der optionale Funktionsparameter kann als nettes Feature in JavaScript identifiziert werden. Selbst die Verwendung optionaler Parameter ist am besten geeignet, um Code zu vereinfachen. es ist eine selten genutzte Funktion.
Wenn wir eine Funktion häufig mit denselben Werten für einige Parameter aufrufen möchten, können wir Wiederholungen vermeiden, indem wir diese Parameter optional machen. Dazu können wir die oben genannten Methoden je nach Eignung verwenden.