javascript - 具有 Reduce 和 Filter 的数组

标签 javascript arrays function logic

我有一个问题。我正在学习 JavaScript,我是 StackOverflow 的新手。所以,如果我有一个

Array = [ 7, 5, 6, 1, 3, 7] 

如何使用过滤和缩减函数显示该数组的值大于这些数字的平均值?我已经这样做了

const values = [5, 6, 10, 4, 3, 7, 1]


function averageValues(v) {
    let sum = 0
    for(let i = 0; i < v.length; i++){
        sum += v[i]
    }
    return sum/v.length
}

const average = averageValues(values)
console.log('Average = ' + average)

console.log(values.filter(function(v){
    return v > average
}))

最佳答案

使用reduce求平均值:

const average = values.reduce((acc, cur) => acc + cur) / values.length

然后你可以运行你的其他函数:

values.filter(v => v > average)

关于javascript - 具有 Reduce 和 Filter 的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58458941/

相关文章:

php foreach 将多维数组打印到表中?

Python:如何只将需要的参数从字典传递给函数?

C题: error: expected ')' before '*' token

C++ 设置类值

javascript - 如何为排除无穷大和 NaN 的数字声明 Flow 类型?

javascript - PaperJS SymbolItems 在命中结果搜索后丢失属性

javascript - 获取主干中的按钮值

javascript - 如何从另一个字符串中提取字符串

Javascript 将用户输入存储到数组中

java - 从最低到最高打印数组而不排序