【问题标题】:Multiply each values in array with javascript将数组中的每个值与javascript相乘
【发布时间】:2015-12-07 10:32:49
【问题描述】:

我在 javascript 中有一个这样的数组:

var odds = [1.80, 2.90, 3.1, 1.05];

我想将数组中的所有浮点值相乘,例如 (1.80 * 2.90 * 3.1 * 1.05)

谢谢

【问题讨论】:

  • 了解一些有关循环的基础知识,然后返回您尝试过的内容
  • 当来自重复 url 的解决方案仅响应一半问题时标记为重复,他要求仅乘以浮点数而不是数组上的所有数字。 Maye 重新检查重复标志。

标签: javascript jquery floating


【解决方案1】:

只需使用Array.prototype.reduce() 完成此任务。

reduce 提供了一个返回值,这是这个问题的一个重要特性。

forEach,例如,需要一个变量来保存中间结果。

var odds = [1.80, 2.90, 3.1, 1.05];
document.body.textContent = odds.reduce(function (a, b) { return a * b; });

【讨论】:

  • 使用reduce 超过forEach 的任何原因?小描述会很有帮助!
【解决方案2】:

只需将for 循环用于以下内容:

var res = 1;
for(var i=0;i<odds.length;i++)
   { 
     res*=odds[i];
 }

结果在res

解释::我们将遍历数组并继续将其中的每个元素与具有先前存储结果的元素相乘(在本例中为res,最初为 1),最后结果存储在res

【讨论】:

    猜你喜欢
    • 2021-08-15
    • 1970-01-01
    • 2019-07-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-13
    • 2019-10-10
    相关资源
    最近更新 更多