ActionScript 3.0 + Berechnen von Zeitraum zwischen zwei Daten?
In ActionScript 3.0 gibt es eine automatische Möglichkeit zum berechnen der Anzahl von Tagen, Stunden, Minuten und Sekunden, die zwischen zwei angegebenen Daten?
Im Grunde, was ich brauche, ist der ActionScript-äquivalent .NET Timespan-Klasse.
Irgendeine Idee?
InformationsquelleAutor der Frage FlySwat | 2008-10-03
Du musst angemeldet sein, um einen Kommentar abzugeben.
Erstellte ich eine ActionScript-TimeSpan-Klasse mit einer ähnlichen API-System.Zeitspanne, um die leere zu füllen, aber es gibt Unterschiede aufgrund der fehlenden operator zu überladen. Sie können es verwenden, etwa so:
Unten ist der code für die Klasse (sorry für den großen post - ich habe nicht die Unit-Tests 😉
InformationsquelleAutor der Antwort Richard Szalay
Können Sie verdeckten die zwei Datum-Zeit in Millisekunden seit Beginn der Epoche, führen Sie Ihre Mathe-und dann die resultierende Millisekunden zu berechnen, diese höheren timespan zahlen.
Den LiveDocs nützlich sind für diese Art der Sache zu. Sorry, wenn der ActionScript-Code ist ein bisschen off, aber es hat schon eine Weile.
Ich würde auch empfehlen, eine Reihe von statischen Klassen Methoden, die diese Operationen durchführen, wenn Sie tun eine Menge von dieser Art von Mathematik. Leider wird diese grundlegende Funktionalität existiert nicht wirklich in der standard-APIs.
InformationsquelleAutor der Antwort Russell Myers
für einige einzelne Funktionen, wie das meinem vorzuziehen...
[condensed von Richard Szalay code]
InformationsquelleAutor der Antwort kam
Gibt es keine automatische Möglichkeit dies zu tun. Das beste, was Sie erreichen können mit den mitgelieferten Klassen ist zu Holen Datum1.Zeit und date2.Zeit, geben die Anzahl der Millisekunden seit dem 1. Januar 1970, für zwei zahlen. Sie können dann die Anzahl der Millisekunden zwischen Ihnen. Mit einigen grundlegenden Mathematik, Sie können dann daraus die Sekunden, Stunden, Tage, etc.
InformationsquelleAutor der Antwort David Arno
Um der Genauigkeit Willen, den obigen post von Russell korrekt ist bis Sie 25 Tage Unterschied, dann wird die Zahl zu groß für die int-variable.
Daher erklären die millisecondDifference:Number;
Kann es einige Unterschied zwischen den dokumentierten getTime() und valueOf(), aber in der Wirkung kann ich es nicht sehen
InformationsquelleAutor der Antwort
oder
InformationsquelleAutor der Antwort kumling
ArgumentValidation ist eine andere Klasse von Mr-Szalays, hat einige Prüfungen zu machen sicher, dass jede Methode hat auch die richtigen Werte für die Durchführung der Aufgaben, die Sie nicht werfen, nicht definierbarer Fehler. Sie sind nicht unerlässlich, um das TimeSpan-Klasse zu arbeiten, so konnte man nur kommentieren Sie, und die Klasse wird korrekt funktionieren.
Reichen kann post das Argument Validierung Klasse hier so gut, wie es ist sehr praktisch, aber ich werde verlassen, dass bis auf ihn ;P
InformationsquelleAutor der Antwort James Hay
Werfen Sie einen Blick auf http://aplikasiflash.blogspot.com/
Es ist DateHelper und MathParser... getestet
InformationsquelleAutor der Antwort icesflash
Habe ich portiert RoR-Funktion distance_of_time_in_words auf AS3 und fügte hinzu, es zu TimeSpan-Klasse. es steht auf meinem blog http://denisvolokh.blogspot.com/2010/04/distanceoftimeinwords-on-as3.html
InformationsquelleAutor der Antwort Denis VOlokh