ООП вопрос, счетчик детей
В общем такая задача (я ее сделал, но с другом думаем, как лучше)
У меня есть башня, которая стреляет, каждый новый снаряд - это новый ребенок конструктора Shoot(); Мой вариант: как посчитать количество детей у родителя function a() { a.prototype.chet += 1; // Каждое рождение увеличиваем его } a.prototype.chet = 0; // Создаем свойство в прототипе родителя var b = new a() var c = new a() alert(a.prototype.chet) // 2 Его: var bullets = [] bullets.push(new Shoot()) Я понимаю, что мой не красивый, но какая разница, что так я создаю объект, что так |
9xakep,
может сделать подобие твоего варианта, только не в прототип мешать (кстати у любого экземпляра можно будет помотреть кол-во родившихся снарядов), а использовать св-о класса, прямо как у класса Date?:) |
Цитата:
Цитата:
И что там используется, как у меня? |
Цитата:
function A() { A.chet += 1 ; } ; A.chet = 0 ; new A() ; new A() ; alert(A.chet) |
Hekumok,
А ясно ,спасибо Дима при чем тут класс? В js объекты так то |
Цитата:
var q = new Cat; q.constructor.prototype === __proto__ |
godofjavascript,
Я и так знаю, что обращениек прототипу конструктора есть __proto__ |
9xakep,
через __proto__? да неужто :) function a() { a.prototype.chet += 1; // Каждое рождение увеличиваем его } a.prototype.chet = 0; // Создаем свойство в прототипе родителя var b = new a() var c = new a() alert(b.chet) // 2 alert(c.chet) // 2 Hekumok правильно выразил мою мысль, в примере Hekumok-а такие св-а называются статическими св-ми класса (мы же используем классы) :) |
function A() { A.prototype.chet += 1 } A.prototype.chet=0; var b = new A(); alert(b.__proto__.chet) |
9xakep,
Цитата:
|
Часовой пояс GMT +3, время: 13:18. |