Neuer Stil von CLS-Design.com

  • SoftCreatR : Jetzt habe ich das Problem, dass die Uhr nicht weiter läuft....


    Hier der aktuelle Code:


  • Dann muss jetzt mal der proSidor schauen, ob die Anzeige jetzt passt,.....


    Nein, tut sie nicht. Also nicht direkt. Ist aber meine Schuld. Ich habe Quatsch erzählt ;) Denn TIME_NOW ist ja statisch und ändert sich nicht.


    Füg mal über var time = new Date(TIME_NOW*1000), noch ein: TIME_NOW++;

  • Nein, tut sie nicht. Also nicht direkt. Ist aber meine Schuld. Ich habe Quatsch erzählt ;) Denn TIME_NOW ist ja statisch und ändert sich nicht.


    Füg mal über var time = new Date(TIME_NOW*1000), noch ein: TIME_NOW++;

    Ah... ja ... das wars... Uhr läuft und nun ist auch bei mir die korrekte Uhrzeit zu sehen. Ich hoffe bei proSidor nun auch...


    Danke SoftCreatR

  • Extrem geil ist die Methode nicht und es wäre möglich, dass das Verändern von TIME_NOW irgendwelche Seiteneffekte erzeugt, die ich nicht bedacht habe. Wenn du auf Nummer sicher gehen willst, ersetze



    durch:


    Edited 2 times, last by SoftCreatR ().

  • An für sich ist das korrekt, ja. Aber warum ich nicht einfach TIME_NOW_CP = TIME_NOW verwende: Würde ich das tun, würde ich nur eine Referenz auf die ursprüngliche Variable erzeugen. Änderungen an der "neuen" Variable führen zumindest in Javascript dazu, dass auch die "alte" Variable verändert wird. Dadurch hättest du aber nichts gewonnen, weil ja vermieden werden soll, dass die Variable TIME_NOW verändert wird. Das slice(0) ist ein kleiner Hack, um das Problem zu umgehen. Allerdings funktioniert das nur bei Strings, also muss der Integer erst in einen String gecastet werden und am Ende wieder in einen Integer, weil sich mit Strings immer schlecht rechnen lässt.


    Gibt sicherlich noch schönere Wege. Das hier ist mir nur als erstes eingefallen :)

  • An für sich ist das korrekt, ja. Aber warum ich nicht einfach TIME_NOW_CP = TIME_NOW verwende: Würde ich das tun, würde ich nur eine Referenz auf die ursprüngliche Variable erzeugen. Änderungen an der "neuen" Variable führen zumindest in Javascript dazu, dass auch die "alte" Variable verändert wird. Dadurch hättest du aber nichts gewonnen, weil ja vermieden werden soll, dass die Variable TIME_NOW verändert wird. Das slice(0) ist ein kleiner Hack, um das Problem zu umgehen. Allerdings funktioniert das nur bei Strings, also muss der Integer erst in einen String gecastet werden und am Ende wieder in einen Integer, weil sich mit Strings immer schlecht rechnen lässt.


    Gibt sicherlich noch schönere Wege. Das hier ist mir nur als erstes eingefallen :)

    Boah... das ist ja eine besondere Art von JavaScript-Programmierung... Aber danke für die tolle Erklärung. Wieder was gelernt. Und danke für den Code!


    Ich merke schon, ich sollte mal mehr JavaScript mir aneignen... :)