题目描述
从一个不定长度的数组里面均匀取出指定百分比系数个元素返回一个新数组,新数组必须包含不定长度数组的第一个和最后一个元素
按我的理解是:
// 新数组包含老数组的第一项、最后一项和满足条件的那些项
let arrNew = arrOld.filter((item,index) => {
if(index === 0 || index === arrOld.length) return true;
return xxx //xxx为满足的条件
})
function average(arr,pd){
var newArr=[];
pd = 1/(pd.slice(0,pd.length-1)/100); //平均递增值
var ave = arr.length/pd; //生成个数
pd = Math.ceil(pd); //上取整
newArr.push(arr[0]);
for(var i=1;i<arr.length;i++){
if(newArr.length+1>=ave)
break;
if(i%pd==0) {newArr.push(arr[i])}; //整除
}
newArr.push(arr[arr.length-1]);
return newArr;
}
average(a,'33%');
10 回答11.7k 阅读
2 回答3.2k 阅读✓ 已解决
4 回答2.2k 阅读✓ 已解决
3 回答1.2k 阅读✓ 已解决
3 回答871 阅读✓ 已解决
3 回答1k 阅读✓ 已解决
2 回答1.2k 阅读✓ 已解决