Hallo und guten Abend,
Man benötigt für das Button-Element keine zusätzlich Variable zum Merken des Zustandes. Es hat auch eine Value-Property, die man per HTML initialisieren und per JS dann nutzen (auslesen, setzen) kann.
Das Gute am Button-Element ist: Beschriftung und value= sind zwei ganz verschiedene Dinge. Ergo werde ich den Teufel tun und am value was ändern, wenn ich die Beschriftung ändern wollte. Und genauso empfehle ich das auch. value= geht in Richtung Programmlogik, <>Beschriftung</> geht an Benutzer. Sauber getrennt und für den Zustand gibt es außerdem eine dedizierte static Variable.
Abstarkt gesehen isses völlig Wurscth ob ein solcher Flipflop serverseitig oder clientseitig gebaut wird.
Dag