2010-12-09 16 views
1

En fonction d'un horodatage de milliseconde donné, quelle est la bonne façon d'obtenir le jour, la semaine, le mois, l'année, etc. C'est-à-dire, sans avoir à faire une sorte de recherche binaire avec des valeurs d'horodatage millisecondes brutes ou quelque chose de stupide comme ça.Javascript, heure et date: Obtenir le jour, la semaine, le mois, l'année, etc.

Éditer: Est-ce que l'utilisation du constructeur Date avec une valeur de mois, de jour, d'heure, etc. au-delà de la limite la traduit en année, mois, jour, etc.

Répondre

4
function getNextDate() 
    { 
    var today = new Date(); 
    var d = today.getDate(); 
    var m = today.getMonth(); 
    var y = today.getYear(); 

    var NextDate= new Date(y, m, d+1); 
    var Ndate=NextDate.getMonth()+1+"/"+NextDate.getDate()+"/"+NextDate.getYear(); 
    alert(Ndate); 
    } 
+3

Um, ce qui se passe si jour est le 31 (ou quelle que soit la fin du mois est) et que vous ajoutez 1 à elle? Est-ce qu'il détermine correctement l'horodatage que vous avez l'intention de faire? – Hamster

1

Si l'horodatage de milliseconde que vous avez est (idéalement!) Le nombre de millisecondes depuis 1970/01/01 alors vous pouvez simplement créer un nouvel objet Date de la valeur milliseconde new Date(milliseconds) et de l'utiliser comme indiqué dans Misnomer de répondre.

Si votre horodatage est basé sur un autre moment, vous pouvez simplement calculer le décalage (en millisecondes) à partir du 1970/01/01 et le soustraire de l'horodatage avant de créer l'objet Date.

Comme toujours lorsqu'il s'agit de dates, soyez clair si vous traitez en temps local ou UTC.

w3schools date object

w3schools full date reference