this.foo1みたいにオブジェクトのプロパティにしたいなら、
それを使うときは、this.foo1で呼び出さないとエラーですよ。
隠したい時は、おっしゃるとおり、varで宣言して、
オブジェクトみたいな関数内で変数を共有したいときは、thisをつけてやればいいと思います。