Efeito de variáveis declaradas e não declaradas
Qual é a principal diferença entre as variáveis declaradas e não declaradas do JavaScript, uma vez que o operador delete não funciona nas variáveis declaradas?
var y = 43; // declares a new variable
x = 42;
delete x; // returns true (x is a property of the global object and can be deleted)
delete y; // returns false (delete doesn't affect variable names)
Por que isso acontece? Variáveis declaradas globalmente são também as propriedades do objeto window, então por que não pode ser deletado?