![]() |
Frage zu bind und Standardwerten... - Druckversion +- Javascript-forum (https://javascript-forum.de) +-- Forum: Entwicklung (https://javascript-forum.de/forumdisplay.php?fid=4) +--- Forum: Javascript (https://javascript-forum.de/forumdisplay.php?fid=6) +--- Thema: Frage zu bind und Standardwerten... (/showthread.php?tid=397) |
Frage zu bind und Standardwerten... - Gast - 04.04.2022 Hi Leute, folgendes Beispiel, bei dem ich nicht durchblicke... Code: function test(a, b=17, c=81, d="LLLL") Der Code liefert mir folgende Ausgabe: Zitat:a: 4 | b: [object MouseEvent] | c: 81 | d: LLLL Ist sicherlich etwas einfaches, aber ich komme grad einfach nicht drauf, warum nicht der Standard von b verwendet wird... Danke schonmal. RE: Frage zu bind und Standardwerten... - admin - 04.04.2022 Mit den Thema habe ich mich auch noch nicht so ichtig beschäftigt. Hast du mal hier gelesen https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Global_Objects/Function/bind Ich würde dein Codeso machen. Code: var module = { Welcher Weg der bessere ( richtigerer ) ist weiß ich auch nicht. Werde mich aber mal einlesen. RE: Frage zu bind und Standardwerten... - Gast - 05.04.2022 Danke admin. Ja, ich habe schon bei der bind-Doku nachgeschaut, aber nichts gefunden, was das konkret erklären würde. Dein Vorschlag wärde ne Möglichkeit, ist aber nicht so bequem und vergrößert den Code deutlich vor allem, wenn man bind häufiger so nutzen will. Scheint so, als würde bei bind das Event-Objekt als letzter Parameter übergeben und dabei aber nur die Anzahl an Argumenten, nicht aber die Anzahl an Parametern der eigentlichen Funktion beachtet werden. So ist es ja auch logisch, bedeutet aber dann wohl auch, das man bei der zu bindenen Funktion immer alle Parameter setzen muss. Möchte man dann die Standardwerte verwenden, so muss man bei bind an der entsprechenden Stelle "undefind" setzen. Mit anonymen- oder Pfeilfunktionen geht das jedoch ohne Probleme: Code: ... Hatte mich nur bei bind gewundert und daher mal in die Runde gefragt... |