В JavaScript мы используем функции (так называемые функции конструктора) для создания экземпляров объектов.
function Bulb() {
this.state = 0;
}
// one instance
var bulb1 = new Bulb();
// another instance
var bulb2 = new Bulb();
Ваш код не работает, потому что ваш bulb
является обычным объектом, а не функцией, поэтому вы не можете вызвать его (что вы пытаетесь сделать с bulb()
).
Обновление: Вы можете сохранить свои экземпляры в глобальной переменной Array:
var bulbs = [];
А потом, всякий раз, когда вы создаете новый экземпляр, просто убедитесь, что вы поместили его в массив.
$('button').click(function() {
var bulb = new Bulb();
// do stuff with bulb
// make sure to store it into the Array
bulbs.push(bulb);
});
Вы можете получить доступ к экземплярам в любое время, например:
bulbs[0] // the 1. instance
bulbs[1] // the 2. instance
// etc.