При выполнении операции присвоения без указания var производится поиск переменной с таким именем по цепочке контекстов и, при отрицательном результате, создаётся свойство глобального объекта. При использовании use strict в последнем случае будет выброшено исключение.