Показать сообщение отдельно
  #2 (permalink)  
Старый 15.04.2014, 17:31
Профессор
Отправить личное сообщение для jsnb Посмотреть профиль Найти все сообщения от jsnb
 
Регистрация: 15.03.2014
Сообщений: 561

Все глобальные переменные - это свойства объекта window. Что мешает из методов обращаться к ним как window['varName']? А в качестве параметра можно передавать имя нужной глобальной переменно строкой.
Примерно так:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
</head>
<script>

    function obj(init)
    {
        this.data = init.data;
    }
 
    obj.prototype.f1 = function(d) 
    {
        window[this.data] = d;
    }
 
    var var1='первоначальное значение',
     
        o1 = new obj({ data: 'var1' }),
 
     
        o2 = new obj({ data: 'var1' });
    o1.f1('первый');
 
    alert(var1); 
     
    o2.f1('второй');
    alert(var1);
</script>
<body>
</body>
</html>

Последний раз редактировалось jsnb, 15.04.2014 в 17:35.
Ответить с цитированием