2016-10-11 3 views
0

Ich habe ein Startdatum in einer Datenbank definiert und ich muss wissen, wann das Startdatum größer als die aktuelle Zeit ist. Ich habe versucht, setInterval, aber ich kann nicht auf die aktualisierte Zeit außerhalb der SetInterval-Funktion zugreifen.Javascript vergleichen aktuelle Zeit zu Variable jede Minute

Dies ist, was ich brauche, um die aktuelle Zeit der Datenbank Variable vergleichen:

if(startDate > now) { 
var status = 'pre'; 
} 

ich mit setInterval versucht haben, wie folgt, aber ich kann die aktualisierte (aktuelle Zeit) nicht zugreifen außerhalb der setInterval-Funktion.

setInterval(function(){ 
    now = moment(new Date()).format(); 
    console.log('time1 ', now); // this works 
}, 1000); 

console.log('time2 ', now); // this doesn't 

Was mache ich falsch?

+0

Der Bereich ist falsch, Sie sollten "jetzt" außerhalb von setInterval definieren. – Carlos2W

+0

globale Variable definieren, um Wert außerhalb zu erhalten –

+0

Können Sie die Komponente anzeigen, in der dies verwendet wird? – tobiasandersen

Antwort

0

die Sie interessieren ..

var now = new Date(); 
setInterval(function(){ 
    now = new Date(); 
console.log('time1 ', now.getHours()+":"+now.getMinutes()+":"+now.getSeconds()); 
}, 1000); 

console.log('time2 ', now.getHours()+":"+now.getMinutes()+":"+now.getSeconds()); 
}); 
+0

Danke - aber ich habe nur die gleichen Ergebnisse - nur time1 wurde jede Sekunde aktualisiert –

Verwandte Themen