首页 > 解决方案 > javascript将函数应用于不同的数组

问题描述

我想要达到的目标:

  1. 计算带有分数的数组的平均分数的函数。
  2. 使函数可重用于不同的数组

迄今为止取得的成绩:

const grades = [9, 8, 5, 7, 7, 4, 9, 8, 8, 3, 6, 8, 5, 6];
function classAverage () {
    let sumOfGrades = 0;
    for(let i = 0; i < (grades.length); i++) {
        sumOfGrades += grades[i];

    }
    const averageGrade = sumOfGrades/(grades.length);
    return averageGrade;
}
classAverage(grades);
console.log(averageGrade);

这似乎在我的 ide 中有效,在这里它会产生一个错误 averageGrade 未定义。接下来我希望这个函数可以应用于更多的数组,比如 Grades1999 或 Grades2021 但是函数内部的 for 循环使用 Grades 数组进行计算,我怎样才能实现这个函数可以使用类似:classAverage Grades(2019 ) 具有不同名称的数组。

感谢您的时间!

标签: javascriptarraysfunction

解决方案


您需要函数内部数组的参数来计算不同的数组。

因此,您需要对返回值进行赋值或直接使用它而不存储结果。

然后,您可以直接使用for ... of语句获取值。

一些提示:

function classAverage (grades) {
    let sumOfGrades = 0;
    for(const grade of grades) {
        sumOfGrades += grade;
    }
    return sumOfGrades/grades.length;
}

console.log(classAverage([9, 8, 5, 7, 7, 4, 9, 8, 8, 3, 6, 8, 5, 6]));


推荐阅读