2016-08-09 8 views
-1

Ist die folgende Verwendung von clearInterval() und setInterval() in keiner Weise schlecht? Wenn ja, in welcher Situation?JavaScript clearInterval() und setInterval() Verwendung

var myInterval; 

if (spaceData.pushed == 1) { 
    clearInterval(myInterval); 
    [...some code...] 
} 
else { 
    myInterval = setInterval(function() { 
     [...some other code...] 
    },1000/60); 
} 

Was der Code tut, ist, dass es einige Code ausgeführt wird, wenn die Leer har und einige andere Code gedrückt worden ist, wenn die Leertaste losgelassen wurde.

+0

Aus Ihrer Beschreibung ist nicht klar, warum Sie überhaupt Intervalle verwenden müssen – Hunter

+1

Nun, Sie löschen das Intervall in jedem Zweig des 'if', so dass Sie es einfach vor es ziehen können. Es sei denn, es fehlt Code, der vor der Anweisung ausgeführt werden muss. Aber ansonsten, mit den aktuellen Informationen, glaube ich nicht, dass es ein Problem gibt. Können Sie näher erläutern, warum Sie denken, dass es ein Problem sein könnte? – vlaz

+0

'func()' sollte 'function()' – Timo

Antwort

0

@Rorro suchen Sie so etwas wie dieses (ich habe @Naga Sai A dem Beispiel verwendet wird):

var myInterval = setInterval(function() { 
    if (spaceData.pushed == 1) { 
    clearInterval(myInterval); 
    } 
    else{ 
    document.getElementById('demo').innerHTML= "x : " +counter++; 
    console.log("x"); 
    } 
},1000/60); 

das Intervall einstellen und innerhalb des Intervalls Handler Prüfung für den Wert, wenn der Wert, was ist erwartet dann löschen Sie das Intervall sonst protokollieren oder aktualisieren.

Verwandte Themen