📅  最后修改于: 2023-12-03 15:40:22.398000             🧑  作者: Mango
在编程中,有时需要查找数组中与其他元素的平均值相同的元素,这时需要编写一段程序来实现这个功能。本文将介绍如何在 JavaScript 中查找 Array 的所有索引,其值与其他元素的平均值相同。
首先需要计算该数组中的所有元素的平均值,可以使用 reduce 方法对数组中的元素进行累加,然后除以数组的长度来得到平均值。
const arr = [1, 2, 3, 4, 5];
const sum = arr.reduce((accumulator, currentValue) => accumulator + currentValue);
const aver = sum / arr.length;
console.log(aver); // 3
遍历数组,查找与平均值相同的元素,并将其索引存入数组中。
const arr = [1, 2, 3, 4, 5];
const sum = arr.reduce((accumulator, currentValue) => accumulator + currentValue);
const aver = sum / arr.length;
const res = [];
for (let i = 0; i < arr.length; i++) {
if (arr[i] === aver) {
res.push(i);
}
}
console.log(res); // []
但是在该例子中,由于平均值不在数组中,所以 res 数组为空。
将查找结果返回给调用方。
function findIndexSameAverage(arr) {
const sum = arr.reduce((accumulator, currentValue) => accumulator + currentValue);
const aver = sum / arr.length;
const res = [];
for (let i = 0; i < arr.length; i++) {
if (arr[i] === aver) {
res.push(i);
}
}
return res;
}
const index = findIndexSameAverage([1, 2, 3, 4, 5]);
console.log(index); // []
本文介绍了如何在 JavaScript 中查找 Array 的所有索引,其值与其他元素的平均值相同。通过计算平均值和遍历数组,我们可以找到所有符合条件的元素,并将其索引返回给调用方。