ui.util.rateLimit
Mit Sammlungen den Überblick behalten
Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.
Umschließt eine Funktion, damit sie höchstens einmal pro Intervall aufgerufen werden kann. Wenn die Wrapper-Funktion mehr als einmal aufgerufen wird, wird nur der erste Aufruf ausgeführt. Nachfolgende Aufrufe haben erst dann wieder eine Wirkung, wenn das Intervall abgelaufen ist. So kann sichergestellt werden, dass eine rechenintensive Funktion sofort, aber nicht wiederholt ausgeführt wird.
Beispiel: Für den Callback für einen Klick auf eine ui.Button, um zu verhindern, dass die Schaltfläche versehentlich doppelt angeklickt wird und der Callback zweimal ausgeführt wird.
Gibt die funktionsbeschränkte Funktion zurück.
Nutzung | Ausgabe |
---|
ui.util.rateLimit(func, delay, scope) | Funktion |
Argument | Typ | Details |
---|
func | Funktion | Die aufzurufende Funktion. |
delay | Zahl | Nachdem die Funktion aufgerufen und ausgeführt wurde, die Anzahl der Millisekunden, die gewartet werden soll, bevor ein weiterer Aufruf der Funktion zulässig ist. |
scope | Objekt, optional | Objekt, in dessen Bereich die Funktion aufgerufen werden soll. |
Sofern nicht anders angegeben, sind die Inhalte dieser Seite unter der Creative Commons Attribution 4.0 License und Codebeispiele unter der Apache 2.0 License lizenziert. Weitere Informationen finden Sie in den Websiterichtlinien von Google Developers. Java ist eine eingetragene Marke von Oracle und/oder seinen Partnern.
Zuletzt aktualisiert: 2025-07-26 (UTC).
[null,null,["Zuletzt aktualisiert: 2025-07-26 (UTC)."],[[["\u003cp\u003eLimits a function's execution to at most once per specified interval, preventing rapid, repeated calls.\u003c/p\u003e\n"],["\u003cp\u003eUseful for optimizing expensive functions or preventing unintended double-click actions, such as on UI buttons.\u003c/p\u003e\n"],["\u003cp\u003eReturns a rate-limited version of the original function, accepting the function, delay, and optional scope as parameters.\u003c/p\u003e\n"],["\u003cp\u003eUtilizes a delay mechanism to ensure subsequent calls are ignored until the interval has elapsed, guaranteeing controlled execution.\u003c/p\u003e\n"]]],[],null,["# ui.util.rateLimit\n\n\u003cbr /\u003e\n\nWraps a function to allow it to be called, at most, once per interval. If the wrapper function is called more than once, only the first call will go through, and no subsequent invocations will have an effect until the interval has elapsed. This can be used to ensure a function that is expensive to run executes immediately but doesn't execute repeatedly.\n\n\u003cbr /\u003e\n\nExample use: For the callback to a click on a ui.Button, in order to prevent the button from being accidentally double-clicked and the callback running twice.\n\nReturns the rate-limited function.\n\n| Usage | Returns |\n|---------------------------------------------|----------|\n| `ui.util.rateLimit(func, delay, `*scope*`)` | Function |\n\n| Argument | Type | Details |\n|----------|------------------|------------------------------------------------------------------------------------------------------------------------------------------|\n| `func` | Function | Function to call. |\n| `delay` | Number | After the function is called and executed, the number of milliseconds to delay before allowing an additional invocation of the function. |\n| `scope` | Object, optional | Object in whose scope to call the function. |"]]