Sweet,
Я думаю, не совсем так.
foo="bar" // объявляем свойство глобального объекта
var foo // объявляем переменную, в которую копируется значение свойства глобального объекта
delete foo // пытаемся удалять переменную - false, и вместе с этим удаляется св-во в глобале
console.log(global.foo)// это не имеет никакого отношения к переменной, и кроме того, мы это свойство удалили
console.log(foo)// bar - ибо почему бы и нет = так оно и должно быть.