Наружный метод в JavaScript
953 сообщения
#6 лет назад
Приветствую всех. Хочу узнать ваше мнение, нормально или нет, для общей практики, реализовывать метод вне класса? Есть код, который нужно выполнять в другом скоупе, управляя им из класса, и чтоб он был привязан к экземпляру класса. Для этого описываю метод снаружи, и вызываю его из класса.[code]function MyClass(){
// что-то делаем и передаем результат в наружный метод
this.extMth(data);
}
const mc = new MyClass();
mc.extMth = function (data) {
// code
}[/code]Нормально ли так делать (работает как надо) или лучше применить другие механизмы, например события (nodeJs)?
953 сообщения
#6 лет назад
забыл добавить важную деталь. Метод может "подключаться" на лету, во время исполнения кода в классе и должен выдавать текущее состояние счетчика, например. Можно реализовать немного по другому, чтоб не нарушать принцип инкапсуляции...[code][list=1]
6863 сообщения
#6 лет назад
[quote=lufter]чтоб не сказали, что гомнокод[/quote]Все-равно скажут, хоть в лепешку разбейтесь )))
10 сообщений
#6 лет назад
lufter, А почему вы так не создаете класс?
[code][list=1]
this.height = height;
this.width = width;
}
}
[/list][/code]Classes ES6 - ссылкатам же можно внутри класса создать функции, хотите статическую или можно обычный метод.
[code][list=1]
this.height = height;
this.width = width;
}
get area() {
return this.calcArea();
}
calcArea() {
return this.height * this.width;
}
}
[/list][/code]
[quote=floppox]Все-равно скажут, хоть в лепешку разбейтесь ))) [/quote]Почему?
10 сообщений
#6 лет назад
[code]function arrayForBar(size) {
this.getRandom = function (minEl, maxEl) {
return Math.random() * (maxEl - minEl) + minEl;
}
}[/code]Вы можете объявить внутри.
6863 сообщения
#6 лет назад
[quote=Andrew_Fix]Почему?[/quote]Потому что люди так устроены, что всегда найдут к чему придраться. Не существует такого кода, которым были бы довольны все.
Особенно, если это javascript
[quote=Andrew_Fix]Почему?[/quote]Потому что люди так устроены, что всегда найдут к чему придраться.
Не существует такого кода, которым были бы довольны все.
Особенно, если это javascript
10 сообщений
#6 лет назад
[quote=floppox]Не существует такого кода, которым были бы довольны все. [/quote]floppox, Похоже на какую то выжималовку. Типа хотят выгнать человека с работы и начинают придираться ко всему. Если говорить про норм компании то там нужно просто придерживаться стандартов.
918 сообщений
#6 лет назад
А причем тут способ объявления классов?Тут же спрашивают насколько кошерно прилеплять методы динамически (насколько я понял из
Метод может "подключаться" на лету)
Скажу от себя - по мне это как-то стремновато и лучше передавать функцию как коллбек или в конструктор или в один из методов. Но в js что только не сделают.
10 сообщений
#6 лет назад
inter-job, [quote=inter-job]в один из методов[/quote]Также думаю что это лучше.
10 сообщений
#6 лет назад
b0nn1e, Наследование?Тоже об этом подумал.
Но у него обязательное условие -
"подключаться" на лету, во время исполнения кодаДумаю калбек лучше.




