Как перегрузить функции в JavaScript?
Классический (не js) подход к перегрузке:
function myFunc(){
//code
}
function myFunc(overloaded){
//other code
}
Javascript не позволяет определять несколько функций с одинаковыми именами. Таким образом, появляются такие вещи:
function myFunc(options){
if(options["overloaded"]){
//code
}
}
Есть ли лучший обходной путь для перегрузки функций в javascript, кроме передачи объекта с перегрузками в нем?
Передача перегрузок может быстро привести к тому, что функция станет слишком многословной, потому что для каждой возможной перегрузки потребуется условный оператор. Использование функций для выполнения//code
Внутри этих условных выражений могут возникнуть сложные ситуации с областями видимости.