<p>定义一个含有30个整型元素的数组,按顺序分别赋予从2开始的偶数;<br>然后按顺序每五个数求出一个平均值,放在另一个数组中并输出;</p>
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 }
你好,其实我还没看懂这个题的意思,他不是说有30个整型的元素嘛,然后<按顺序分别赋予从2开始的偶数>这句话我还真的不懂什么意思....
@^|^荆&轲^|^: 。。。那你先搞懂是什么意思吧
@^|^荆&轲^|^: 有什么不懂的可以加qq:2375287790,大家互相交流。
@~扎克伯格: 你是做网站开发的吗?做了多久了?
@^|^荆&轲^|^: 做好你要做的
@~扎克伯格: 不明白
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;
不是很懂,求给点注释....
@^|^荆&轲^|^:
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这些内置方法,那说明基础太不好,要补一下了
@split: 谢谢 这样就一目了然了,刚开始学习这些有点懵逼...
@^|^荆&轲^|^: 结贴错了,不好意思,请别在意那五个园豆....