Domanda

JavaScript ha funzioni setInterval e clearInterval per gestire le chiamate di funzione asincrone.

C'è una differenza tra clearInterval(handle) e window.clearInterval(handle)?

L'ho visto in uso in entrambe le direzioni.

È stato utile?

Soluzione

In un browser, tutte le funzioni globali sono proprietà implicitamente dell'oggetto window. Così clearInterval() e window.clearInterval() sono la stessa identica cosa.

Non v'è alcuna differenza tra loro a meno che non si definisce una funzione locale chiamato clearInterval(), nel qual caso sarebbe window.clearInterval() riferimento quella globale e clearInterval() avrebbe riferimento quello locale.

Lo stesso sarebbe vero per le funzioni globali che ti definisci.

Altri suggerimenti

Non c'è una vera differenza

Questo è fondamentalmente lo stesso del seguente dove variabile globale sono una proprietà dell'oggetto finestra.

var myvar = "hello";

alert(myvar);

alert(window.myvar);

o dove le funzioni globali sono proprietà dell'oggetto finestra.

document.getElementById("myID");

window.document.getElementById("myID");

window è l'oggetto contesto globale. Se non si è in una funzione che ha avuto lo scopo di modificare, tutto ciò che si digita è implicitamente preceduto da window..

var a = 0;
window.a = 0;

setTimeout(foo, 1000);
window.setTimeout(foo, 1000);

alert(this == window); //true
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top