Cada propiedad del objeto window
es una variable global. Esto significa que puede hacer algo como esto:¿Cuál es el propósito de hacer referencia al objeto ventana en Javascript?
window.foo = 42;
alert(foo); //alerts 42
var bar = 3;
alert(window["bar"]); //alerts 3
Debido a esto, siempre me he preguntado cuál es el propósito era incluir window
en código como este
if(window.prompt("Enter Password") === "secret") {
window.location.hash = "authorized";
window.open("secretPage.html");
}
cuando se podría omitir window
y tienen código que hace exactamente lo mismo:
if(prompt("Enter Password") === "secret") {
location.hash = "authorized";
open("secretPage.html");
}
El uso también parece inconsistente; Casi nunca veo window.alert
pero con frecuencia veré window.location
.
¿A la gente le gusta hacer referencia a window
para hacer que su código sea más detallado? ¿Hay alguna buena razón para hacer esto que yo no sepa?
'window' es solo una propiedad del objeto global. – Saxoier
... que apunta a sí mismo. – Saxoier
Lo que es interesante, porque eso significa 'ventana === window.window.window.window.window.window' –