Show pageOld revisionsBacklinksBack to top This page is read only. You can view the source, but not change it. Ask your administrator if you think this is wrong. ====== Closures ====== Wird in JavaScript eine //innere Funktion// innerhalb einer //äusseren Funktion// definiert, erhält die innere Funktion Zugriff auf die Variablen der äusseren Funktion. Damit können globale Variablen umgangen werden, und man nutzt stattdessen die lokalen Variablen einer einzigen äusseren Funktion. Allerdings können dann im HTML-Code keine Funktionen direkt aufgerufen werden, sondern die Event-Handler müssen vom JavaScript-Code den Element hinzugefügt werden. In depth: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Closures ====== Ohne globale Variablen ====== <WRAP todo> Studieren Sie folgendes Beispiel: {{lehrkraefte:blc:informatik:ffprg1-2023:05-no-globals.zip}} </WRAP> Hinweis: Der ''load'' Event vom ''window'' ist nicht unbedingt die effizienteste, aber die einfachste Lösung. Gewisse Dinge könnten schon erledigt werden, wenn das DOM geladen ist (''load'' Event vom ''document''). Es kann aber sein, dass dieser Event feuert, bevor der Handler registriert wurde, was dann dazu führt, dass der Code nicht ausgeführt wird. lehrkraefte/blc/informatik/ffprg1-2023/js-no-globals.txt Last modified: 2023/02/17 07:07by Ivo Blöchliger