我有一个名为 findLCM
的函数,它有两个参数 (a,b)。
我还有一个包含未知数量元素(所有数字)的数组。为了便于解释,我们假设:
var values = [c, d, e, f]
现在我需要构建的是:
var result = findLCM(findLCM(findLCM(c,d),e),f);
我试图编写一个 for 循环来执行此操作,但卡住了,无法弄清楚。有人可以指出执行此操作的正确方法吗?
到目前为止我的代码:
var result = 0;
for(f = 0; f < values.length -2; f++) {
result *= findLCM(findLCM(values[f], values[f+1]),values[f+2]);
}
最佳答案
这听起来很适合使用 Array.prototype.reduce() :
var values = [c, d, e, f];
var lcm = values.reduce(function(previous, currentValue, currentIndex, arr) {
return findLCM(previous, currentValue);
});
alert(lcm);
关于javascript如何将函数结果与数组中的值一起传递给同一个函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35184892/