Eine JavaScript-Funktion führt keine Überprüfung auf Parameterwerte (Argumente).
Function Parameters und Arguments
Früher in diesem Tutorial haben Sie gelernt , dass Funktionen haben können parameters :
functionName ( parameter1, parameter2, parameter3 ) {
code to be executed
}
Function sind die Namen in der Funktionsdefinition aufgelistet.
Function sind die wirklichen Werte übergeben (und erhielt durch) die Funktion.
Parameter Regeln
JavaScript Funktionsdefinitionen nicht angeben, Datentypen für Parameter.
JavaScript-Funktionen nicht ausführen Typ auf den übergebenen Argumente zu prüfen.
JavaScript-Funktionen nicht überprüfen die Anzahl der Argumente erhalten.
Parameter Vorgabe
Wenn eine Funktion mit fehlenden Argumenten (weniger als angegeben), die fehlenden Werte eingestellt sind aufgerufen wird: undefined
Manchmal ist dies akzeptabel, aber manchmal ist es besser, einen Standardwert der Parameter zuzuweisen:
Wenn eine Funktion mit zu viele Argumente (mehr als deklariert) genannt wird, können diese Argumente zu erreichen mit den Argumenten widersprechen .
Die Argumente Objekt
JavaScript-Funktionen verfügen über einen eingebauten in Objekt aufgerufen die Argumente widersprechen.
Das Argument Objekt enthält ein Array der Argumente verwendet, wenn die Funktion aufgerufen wurde (aufgerufen).
Auf diese Weise können Sie einfach eine Funktion verwenden, um den höchsten Wert in einer Liste von Zahlen finden (zum Beispiel):
Beispiel
x = findMax(1, 123, 500, 115, 44, 88);
function findMax() {
var i;
var max = -Infinity;
for (i = 0; i < arguments.length; i++) {
if (arguments[i] > max) {
max = arguments[i];
}
}
return max;
}
Versuch es selber " Oder erstellen Sie eine Funktion, um alle Eingabewerte zu summieren:
Beispiel
x = sumAll(1, 123, 500, 115, 44, 88);
function sumAll() {
var i, sum = 0;
for (i = 0; i < arguments.length; i++) {
sum += arguments[i];
}
return sum;
}
Versuch es selber " Argumente übergeben werden von Wert
Die Parameter, in einem Funktionsaufruf, sind die Argumente der Funktion.
JavaScript Argumente werden von Wert übergeben: Die Funktion wird nur die Werte kennen, nicht die Standorte des Arguments.
Wenn eine Funktion ein Argument der Wert ändert, wird es nicht den ursprünglichen Wert des Parameters ändern.
Änderungen Argumente sind nicht sichtbar (reflektiert) außerhalb der Funktion.
Objekte werden als Referenz übergeben
In JavaScript Objektreferenzen sind Werte.
Aus diesem Grund , werden die Objekte verhalten sich wie sie als Referenz übergeben werden:
Wenn eine Funktion eine Objekteigenschaft ändert, ändert er den ursprünglichen Wert zurück.
Änderungen an Objekteigenschaften sichtbar sind (reflektiert) außerhalb der Funktion.