<p>定义一个含有30个整型元素的数组,按顺序分别赋予从2开始的偶数;<br>然后按顺序每五个数求出一个平均值,放在另一个数组中并输出;</p>
6 回答

肥皂起泡泡
TA贡献1829条经验 获得超6个赞
1 $(function () { 2 var array = new Array(); 3 //输出的平均数 数组。 4 var avergeArray = new Array(); 5 for (var count = 1; count < 31; count++) { 6 var i = 2; 7 i = i * count; 8 array.push(i); 9 if (array.length % 5 == 0) 10 { 11 var sum = 0; 12 for (var j = 0; j < array.length; j++) { 13 sum = sum + array[j]; 14 } 15 array.splice(0, array.length); 16 var averge = sum / 5; 17 avergeArray.push(averge); 18 } 19 } 20 }

慕田峪9158850
TA贡献1794条经验 获得超7个赞
var arr=new Array(30);
for(var i=2,x=0;x<arr.length;x++,i+=2)
arr[x]=i;
var newArr=[];
for(var i=0,top=0,bottom=5;bottom<=30;i++,top+=5,bottom+=5)
newArr[i]=arr.slice(top,bottom).reduce(function(a,b){return a+b})/5;

饮歌长啸
TA贡献1951条经验 获得超3个赞
@^|^荆&轲^|^:
var arr=new Array(30); //声明一个你要的30整数数组 for(var i=2,x=0;x<arr.length;x++,i+=2) arr[x]=i; //按你的要求给这个数组赋值30个从2开始的偶数 var newArr=[]; //声明一个新数组 来保存平均值 for(var i=0,top=0,bottom=5;bottom<=30;i++,top+=5,bottom+=5) newArr[i]=arr.slice(top,bottom).reduce(function(a,b){return a+b})/5; /* 这里比较复杂 slice方法可以截取指定长度数组 一开始top为0,bottom为5 做slice参数其实就是截取[0,4]五个
五个五个循环截取 求平均赋值给newArr即可
每次循环top和bottom都要挪5个位置 */
如果你不知道slice,reduce这些内置方法,那说明基础太不好,要补一下了
添加回答
举报
0/150
提交
取消