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