Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Как такое сделать? (https://javascript.ru/forum/misc/28888-kak-takoe-sdelat.html)

develka 06.06.2012 11:44

Как такое сделать?
 
Имеется код:
var c = {
test: function(){alert();}
};


Возможно ли туда добавить динамически новый метод?
чтоб получилось так:
var c = {
test: function(){alert();},
test2: function(){alert(2);} // Это нужно динамически добавить
}


Возможно такое?

walik 06.06.2012 11:50

var c = {
   test: function(){alert('1');}
};
      
c.test2 = function() {alert('2');}
        
c.test();
c.test2();

develka 06.06.2012 11:53

walik,
А вот так возможно?
var c = {
   test: function(){alert('1');}
};
var name = 'test2'; 
c.name = function() {alert('2');}
        
c.test();
c.test2();


Но как это правильно сделать?

zebra 06.06.2012 11:58

var name = 'test2';
c[name] = function() {alert('2');}

develka 06.06.2012 12:12

zebra,
почему-то не работает(

zebra 06.06.2012 12:40

var c = {
   test: function(){alert('1');}
};
var name = 'test2'; 
c[name] = function() {alert('2');}
        
c.test();
c.test2();


Часовой пояс GMT +3, время: 12:26.