首页 新闻 会员 周边 捐助

用JS计算30个整型数,分组并得出平均数,再放入新数组中

1
悬赏园豆:5 [已解决问题] 解决于 2017-05-24 10:51

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

^|^荆&轲^|^的主页 ^|^荆&轲^|^ | 初学一级 | 园豆:190
提问于:2017-05-23 15:22
< >
分享
最佳答案
-3
 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     }
收获园豆:5
~扎克伯格 | 小虾三级 |园豆:1923 | 2017-05-23 18:09

你好,其实我还没看懂这个题的意思,他不是说有30个整型的元素嘛,然后<按顺序分别赋予从2开始的偶数>这句话我还真的不懂什么意思....

^|^荆&轲^|^ | 园豆:190 (初学一级) | 2017-05-23 19:06

@^|^荆&轲^|^: 。。。那你先搞懂是什么意思吧

~扎克伯格 | 园豆:1923 (小虾三级) | 2017-05-23 21:31

@^|^荆&轲^|^: 有什么不懂的可以加qq:2375287790,大家互相交流。

~扎克伯格 | 园豆:1923 (小虾三级) | 2017-05-24 09:29

@~扎克伯格: 你是做网站开发的吗?做了多久了?

^|^荆&轲^|^ | 园豆:190 (初学一级) | 2017-05-24 09:49

@^|^荆&轲^|^: 做好你要做的

~扎克伯格 | 园豆:1923 (小虾三级) | 2017-05-24 10:46

@~扎克伯格: 不明白

^|^荆&轲^|^ | 园豆:190 (初学一级) | 2017-05-24 10:47
其他回答(1)
1

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;

split | 园豆:221 (菜鸟二级) | 2017-05-24 09:50

 不是很懂,求给点注释....

支持(0) 反对(0) ^|^荆&轲^|^ | 园豆:190 (初学一级) | 2017-05-24 10:01

@^|^荆&轲^|^: 

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) 反对(0) split | 园豆:221 (菜鸟二级) | 2017-05-24 10:24

@split: 谢谢 这样就一目了然了,刚开始学习这些有点懵逼...

支持(0) 反对(0) ^|^荆&轲^|^ | 园豆:190 (初学一级) | 2017-05-24 10:50

@^|^荆&轲^|^: 结贴错了,不好意思,请别在意那五个园豆....

支持(0) 反对(0) ^|^荆&轲^|^ | 园豆:190 (初学一级) | 2017-05-24 10:53
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册