javascript - 使用 for of 循环计算数组中的多个元素

标签 javascript arrays for-of-loop

我是 JavaScript 的新手,我有一个关于 for...of 的练习,但它失败了。它返回 NaN

我哪里做错了,我需要什么?

代码:

var arr = [];

function multiply(arr) {
  for (var a of arr) {
    a *= arr[a];
  }
  return a;
}
console.log(multiply([2, 3, 4])); // expect: 24

最佳答案

请参阅下面修改的代码。现在工作:

var arr = undefined;

function multiply(arr) {
  if (!arr || !arr.length) {     // if the array is undefined or has no elements, return null
      return null;
  }                              // otherwise, continue to do the calculation, it's an array with values
  var result = 1;                // start our result in 1
  for (var a of arr) {
    result *= a;                 // increase the result by multiplying the
                                 // previous value for every value in the array
  }
  return result;                 // finally return
}
console.log(multiply([2, 3, 4])); // expect: 24
console.log(multiply([]));        // expect: null: 0 elements
console.log(multiply(arr));       // expect: null: arr var is undefined
console.log(multiply());          // expect: null: no argument provided

关于javascript - 使用 for of 循环计算数组中的多个元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55878197/

相关文章:

object - JavaScript:对象[全局对象]没有方法

java - 缩放数组(矩阵)

javascript - 计算字符串中的单词数 - 驼峰命名法

两个点数组多边形的Javascript碰撞

javascript - 如何在 JavaScript 中重做 for...of 循环?

Javascript - 尝试循环对象时 for-of 循​​环崩溃

javascript - 如何使用 jQuery 附加元素、其所有子元素以及父元素和子元素的所有类

javascript - CheckBoxList - onclick() JS 函数如何检测 CheckBox 外部的点击(HTML 输入)

javascript - 如何在浏览器控制台或外部脚本中调用 Reactjs 组件的方法?

php - 如何使用 php 数组作为路径来定位另一个数组中的值?