
假设我们有一个像这样的整数数组 -
const arr = [12, 1, 4, 8, 5];
我们需要编写一个 JavaScript 函数,该函数接受一个这样的数组作为唯一的参数。
该函数应该返回一个正好包含两个整数的数组 -
-
第一个整数应该是除任何一个元素之外的所有数组元素的最小可能总和。
-
第二个整数应该是最大可能的总和排除任何一个元素的所有数组元素。
我们唯一的条件是我们必须使用一个且仅一个 for 循环来完成此操作。
例如 -
对于上面的数组,输出应该是 -
const output = [18, 29];
因为排除的数字分别是 12 和 1。
示例
代码为 -
实时演示
const arr = [12, 1, 4, 8, 5];
const findExtremeNumbers = (arr = []) => {
let sum = 0;
let min = Infinity;
let max = -Infinity;
for(let i = 0; i < arr.length; i++){
const curr = arr[i];
sum += curr;
if(curr > max){
max = curr;
}
if(curr < min){
min = curr;
};
};
return [sum - max, sum - min];
};
console.log(findExtremeNumbers(arr));
输出
控制台中的输出将是 -
[18, 29]
以上就是JavaScript 中排除一个元素的总和的详细内容。

