首页 > 解决方案 > 编写一个 sum() 函数,它接受一个数字数组

问题描述

有人可以向我解释我在这里做错了什么......这段代码来自雄辩的javascript,它工作正常

function sum(array) {
  let total = 0;
  for (let value of array) {
    total += value;
  }
  return total;
}

这就是我为练习写的但返回 NaN..

function sum(numArray) { 
  let add = 0;
  for (let a = 0; a <= numArray.length; a++) {
  let addIndex = numArray[a];
    add += addIndex;
  } 
  return add;
}

标签: javascriptarraysloops

解决方案


您的for循环超出了数组索引。你必须使用:

a < numArray.length

代替:

a <= numArray.length

推荐阅读