Это связано с переменной областью действия.Javascript имеет функциональную область.
Таким образом, выполнив:
var someVar = this.someVar = false;
Вы объявляете локальную переменную someVar и глобальную переменную (которая поднимается к объекту окна, т.е. window.someVar), как это указано в вашем замыканиик глобальной области видимости, т.е. к окну.
Поэтому, когда вы пишете:
someVar = true;
Вы перезаписываете локальную переменную этим новым значением.
Переменные, объявленные в определении функцииявляются локальными для этой функции, если вы используете ключевое слово var:
(function () {
var name = 'Mark';
})();
// Out here you cannot access name
console.log(name);