我在代码大战中的任务“没有最高和最低数字的总和”中存在非常特殊的问题。我知道怎么做,我通过了这个,但改善自己是我的方式。
主题:对除最高和最低元素之外的所有数组求和。
我的代码:
function sumArray(array) {
if (!Array.isArray(array) || array.length <= 1) return 0;
var minMax = [];
minMax.push(Math.min.apply(Math,array));
minMax.push(Math.max.apply(Math,array));
var temp;
while (minMax.length != 0){
temp = (array.indexOf(minMax.splice(0,1)));
array.splice( temp, 1);
}
// array.splice(array.indexOf(Math.min.apply(Math,array)), 1);
// array.splice(array.indexOf(Math.max.apply(Math,array)), 1);
return array;
}
示例测试:sumArray([ 6, 2, 1, 8, 10 ])
我可以通过这种方式传递任务吗?
我的输出[6, 2, 1]