в своем проекте, я регистрирую разные функции (с разным количеством аргументов) в качестве слушателей ряда событий. Когда событие происходит, мне нужно запустить связанную функцию. Я получаю параметры, которые нужно передать методу слушателя в виде массива, тогда как функция слушателя ожидает каждый отдельный аргумент. Итак, я делаю это так, но мне не нравится этот подход, и я хотел бы знать, есть ли элегантный способ сделать это,
function callListenerWithArgs(func, args){
switch(args.length){
case 1:
func(args[0]);
break;
case 2:
func(args[0], args[1]);
break;
case 3:
func(args[0], args[1], args[2]);
break;
case 4:
func(args[0], args[1], args[2], args[3]);
break;
default:
func();
}
}