Переименование функции с аргументами без переписывания их - Javascript - PullRequest
0 голосов
/ 17 октября 2018

в моем коде у меня есть класс, и мне нужно получить функцию на

this.behaviour.trembling.start(with many args...)

и создать функцию в моем классе с именем

startTrembling(with the same many args...)

, который просто вызывает первую функцию, передающую аргументы.Примерно так:

startTrembling(arg1, arg2, arg3, arg4, ...) { 
this.behaviour.trembling.start(arg1, arg2, arg3, arg4, ...); }

Проблема в том, что если я изменяю аргумент в первой функции, мне также приходится менять его во второй.Мне просто интересно, есть ли способ просто переименовать первую функцию, используя direclty ее параметры.Заранее спасибо!

Ответы [ 2 ]

0 голосов
/ 17 октября 2018

Если вы не используете функции стрелок:

Вы можете использовать оператор распространения над неявным arguments объектом

function startTrembling() {
  this.behaviour.trembling.start(...arguments);
}
0 голосов
/ 17 октября 2018

Вы можете использовать объект arguments в сочетании с оператором spread:

Здесь arguments будет содержать каждый аргумент родительской функциивсе, что вам нужно сделать, это spread эти аргументы.

startTrembling(arg1, arg2, arg3, arg4, ...) { 
    this.behaviour.trembling.start(...arguments); 
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...