数组练习
1、求数组一[50,56,47,98,63,59,65,16]中所有元素的和及平均值。
let arrOne=[50,56,47,98,63,59,65,16]; let sum=arrOne.reduce((acc,current)=>acc+current,0); let avg=sum/arrOne.length; console.log('数组一元素之和为:',sum); console.log('数组一元素平均值为:',avg);
运行结果:
数组一元素之和为:454 数组一元素平均值为:56.7
2、求数组二[75,5,86,34,78,101,4,985]中的最小值。
let arrTwo=[75,5,86,34,78,101,4,985] let min=Math.min.apply(null,arrTwo) console.log('数组二最小值为',min)
运行结果:
数组二最小值为:4
3、将数组三['red','green','blue','pink']中的字符转换为用*连接的字符串['red*green*blue*pink']。
let arrThree=['red','green','blue','pink'] let result=[arrThree.join('*')] console.log('数组三转换后的结果为:',result)
运行结果:
数组三转换后结果为:['red*green*blue*pink']
4、在数组四[5,56,35,23,47,2,29,44,63,7,65,16]中选出20-50之间的数放入新数组。
let arrFour=[5,56,35,23,47,2,29,44,63,7,65,16]; let newArr=arrFour.filter(num=>num>=20&&num<=50); console.log('数组四中20-50之间的数有:',newArr);
运行结果:
数组四中20-50之间的数有:[35, 23, 47, 29, 44]
5、翻转数组五['one','two','three','four','five']=>['five','four','three','two','one']。
let arrFive=['one','two','three','four','five']; arrFive.reverse(arrFive); console.log('数组五翻转后为:',arrFive);
运行结果:
数组五翻转后为:['five', 'four', 'three', 'two', 'one']
6、冒泡排序,将数组六[8,5,6,9,2,7]升序排序。
let arrSix=[8,5,6,9,2,7]; let temp; for (let i=0;i<arrSix.length-1;i++){ for (let j=0;j<arrSix.length-1-i;j++){ if (arrSix[j]>arrSix[j+1]){ temp=arrSix[j+1]; arrSix[j+1]=arrSix[j]; arrSix[j]=temp; } } } console.log('数组六排序后为:',arrSix);
运行结果:
数组六排序后为:[2,5,6,7,8,9]