Javascript 如何使用相同的参数执行多个函数

Javascript 如何使用相同的参数执行多个函数,javascript,Javascript,我有一个对象和3个方法,现在执行它的代码如下所示: var cmpAmount = 50, addLessAmount = 6, addMoreAmount = 14; priceChanger.changeSmallPrice(cmpAmount, addLessAmount, addMoreAmount); priceChanger.changeBigPrice(cmpAmount, addLessAmount, addMoreAmount); priceChanger.ch

我有一个对象和3个方法,现在执行它的代码如下所示:

var cmpAmount = 50,
    addLessAmount = 6,
    addMoreAmount = 14;
priceChanger.changeSmallPrice(cmpAmount, addLessAmount, addMoreAmount);
priceChanger.changeBigPrice(cmpAmount, addLessAmount, addMoreAmount);
priceChanger.changeTooltipPrice(cmpAmount, addLessAmount, addMoreAmount);
因此,如果参数相同,如何执行它,并向它们发送参数。
我的意思是如何更改代码使其更少。

可能使用对象存储所有属性:

var args = {cmpAmount:50,addLessAmount: 6, addMoreAmount: 14};

priceChanger.changeSmallPrice(args);
priceChanger.changeBigPrice(args);
priceChanger.changeTooltipPrice(args);

我认为最好创建一个方法“changeAllPrices(cmpAmount,addLessAmount,addmoreamunt)”

您可以使用一个简单的助手函数,例如下面的函数,用一组参数调用每个函数。我相信一些javascript库包含一个类似的组合函数,名为
composeArgs

function execute(fns, args) {
   for(var i = 0; i < fns.length; i++) {
       fns[i].apply(this, args);
   }
}

您的代码可能有问题,我想没有遵循DRY原则。
priceChanger.changeAllPrices
?在对象中创建一个函数来执行其他三个函数如何,只需传递参数数组即可。
var cmpAmount = 50,
    addLessAmount = 6,
    addMoreAmount = 14;

execute([priceChanger.changeSmallPrice, priceChanger.changeBigPrice, priceChanger.changeTooltipPrice], 
        [cmpAmount, addLessAmount, addMoreAmount]);