Hallo utman6,
wie kann man es dann sinvoller schreiben? Hab noch ein problem (+ dem was ich vorher geschrieben hatte :) )
Mein Object bekommt die ein atribut namens "hidetimer". Warum kann ich es in der einen Methode nur über "this" ansprechen, wobei es in der anderen methode, welche mit settimeout aufgerufen wird, ohne this angesprochen werden muss. Gibt da da evtl. noch einen anderen besseren weg?
Ich muss zugeban, dass ich bisher noch wenig objektorientiert in JS programmiert habe. Ich fange selbst damit erst gerade an und glaube ich kann da mehr von dir lernen als umgekehrt.
Mit Programmiersprachen, die einen zu Objektorientierung zwingen, weil sie bei jedem Furz eine Deklaration erwarten, ob die Eigenschaft oder Methode jetzt public oder private ist, tue ich mich sehr schwer.
In Java habe ich in meiner Abschlussprüfung vor drei Jahren mit "Ach und Krach" eine Vier geschafft, in JS mit Leichtigkeit eine Eins, wobei da aber noch nicht einmal "this" vorkam.
Immerhin ich weiß inzwischen, dass "this" immer eine Referenz auf das aktuelle oder aufrufende Objekt liefert, die auch die Zeit überdauert. Deshalb ist Bindung an "this" ja auch praktisch, um einer zeitverzögert durch Timeout oder Eventhandler aufgerufenen Funktion auch ohne Übergabeparameter, der ansonsten mittlerweile gar nicht mehr aktuell ist, sagen zu können, worauf sie sich beziehen soll.
Deshalb denke ich, du hast es in deinem Code jetzt genau richtig verwendet, auch wenn ich noch nicht genau verstehe warum.
Gruß Gernot