javascript如何将函数结果与数组中的值一起传递给同一个函数

标签 javascript arrays function for-loop

我有一个名为 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/

相关文章:

javascript - 将多个 && 条件合并为 1

javascript - 动态更改元素的高度 - Angular 5

JQuery 获取当前数组索引位置

r - 制作一个可管道化的函数

ios - 函数中的 for 循环是否在执行函数后的代码之前完成?

javascript - 我应该在 JavaScript 中将窗口尺寸存储在哪里?

javascript - 如何解码 JSFuck 脚本?

objective-c - 基于包含字典的 NSArray 创建新数组

javascript - 使用对象数组查找每个国家/地区的大陆

javascript - 在内部函数内将对象返回给父函数?