Всемогущие, помогите!
иимеется функция:
...
this.toHash = function(el, act) {
        var dgs = [some digits, dependent on el];
        var name = [some string, dependent on el];
       var hash = {};
       hash.name = new Array();
       hash.dgs = new Array();
        
        var push = function() {
           ...
             
             hash.dgs.push(dgs);
             hash.name.push(name);
        };
        
        var del = function () {
            ...
        };
        switch(act) {
            case('ins') : 
                push();
                break;
                
        }
};
...
Задача проста как песня: сделать из hash хранилище данных, остающееся после выполнения функции this.toHash, не выпихивая ее определение за само тело функции this.toHash.
В приведенном тексте естественно после выполнения кода эта часть
	
	| Код: | 
	| 07	       var hash = {};
08	       hash.name = new Array();
09	       hash.dgs = new Array(); | 
	
удаляется, а при запуске this.toHash создается новый объект hash. А хотелось бы чтобы объект hash оставался бы на всегда 
 
 
Буду благодарен за подсказки 
