Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.143.0.157] |
|
Страницы: (2) 1 [2] все ( Перейти к последнему сообщению ) |
Сообщ.
#16
,
|
|
|
нет не то с классом не надо
|
Сообщ.
#17
,
|
|
|
это не класс - это функция
Добавлено это же js, тут всё есть функция Добавлено тоже самое что и: const Person = (function() { function Person() { this.name = ''; this.age = 0; } return Person; })(); Ну т.е. вообще один в один |
Сообщ.
#18
,
|
|
|
само слово класс меня бесит
ну не проповедуют авторы книжки по которой я учу JavaScript классы, упор делается объекты, прототипы , цепочки прототипов Добавлено за пример спс буду попозже исследовать его пока там много всяких непонятных для меня слов |
Сообщ.
#19
,
|
|
|
вариант с закрытыми членами
var Person = function(name, bday){ // закрытые члены var $name = name, $bday = bday; function calcAge() { var today = new Date(); var age = today.getTime() - bday.getTime(); return Math.floor(age/(1000*24*60*60*365)); } // открытые члены return { getName : function(){ return $name;}, getBirthDay: function(){ return $bday;}, getAge: function(){ return calcAge(); }, setName: function(name){ $name = name;}, setBirthDay: function(bday){ $bday = bday;}, toString: function() { return $name + ' is a ' + calcAge() + ' years old.';} }; }; var gregory = new Person('Gregory', new Date('1980-01-11')); console.log(gregory.toString()); |