2014-09-04 3 views

risposta

17

È possibile utilizzare questo:

// Like Fri, 26 Sep 2014 18:30:00 GMT 
var today = new Date(); 

var myToday = new Date(today.getFullYear(), today.getMonth(), today.getDate(), 0, 0, 0); 

ricreare l'oggetto Date con il costruttore con la data effettiva.

+0

'today.getDate();' @Blader Si prega di correggere in risposta –

+1

Ho usato questo codice per ottenere impostare un oggetto che contiene la data di domani a mezzanotte - var tomorrow_midnight = new Date (now.getFullYear(), now.getMonth(), now.getDate() + 1, 0, 0, 0); Volevo solo condividere questo con il mondo ... :) – TheCuBeMan

0

per analizzare la data in JavaScript è sufficiente utilizzare

var date = new Date("Fri, 26 Sep 2014 18:30:00 GMT”); 

e quindi impostare ore, minuti e secondi a 0 con le seguenti linee

date.setHours(0); 
date.setMinutes(0); 
date.setSeconds(0); 

date.toString() ora restituisce la data desiderata

+3

Quindi, perché non impostarlo in questo modo - var date = new Date ("Ven, 26 set 2014 00:00:00 GMT") e salvare il codice aggiuntivo non necessario? ... – TheCuBeMan

+0

@TheCuBeMan Immagino sia perché dovresti fare un po 'di manipolazione delle stringhe Sembra molto più semplice fare la parte date.setHours(), IMO – ganders

15

Secondo MDN la funzione setHours richiede effettivamente ulteriori parametri opzionali per impostare sia minuti, secondi che mi lliseconds. Quindi possiamo scrivere semplicemente

// dateString is for example "Fri, 26 Sep 2014 18:30:00 GMT" 
function getFormattedDate(dateString) { 
    var date = new Date(dateString); 
    date.setHours(0, 0, 0); // Set hours, minutes and seconds 
    return date.toString(); 
} 
+1

sei fantastico, la migliore risposta :)! –