week03-day05练习
作者:互联网
<script> // 1, 使用reduce求数组中所有元素的乘积, // var arr = [2, 3, 4, 5, 6, 7] var arr01 = [2,3,4,5,6,7]; var result = arr01.reduce(function(pre,cur){ return pre * cur ; }) console.log(result); //5040 // 2, 使用reduce求数组中的最大数, // var arr = [2, 4, 6, 3, 7, 8, 5] var arr02 = [2, 4, 6, 3, 7, 8, 5]; var result01 = arr02.reduce(function(pre,cur){ return pre>cur?pre:cur ; // return Math.max(pre,current) }) console.log(result01); //8 // 3, 使用indexOf完成数组去重. var arr03 =[1,1,2,2,3,3,4,5,6,4,9,8,7] var arr04 = []; arr03.forEach((v,index)=>{ //indexOf从左至右查找v 返回找到的下标, // 如果找到的下标是当前的下标,则没有重复 if(arr03.indexOf(v)==index){ arr04.push(v); } }) console.log(arr04); //(9) [1, 2, 3, 4, 5, 6, 9, 8, 7] // 4. 使用for - of求5!(1 * 2 * 3 * 4 * 5) var arr05 = [1,2,3,4,5] var result01=1; for(var value of arr05){ result01*=value; } console.log(result01); //120 // 5, 使用for - of求1!+2!+3!+4!+5! var arr06 = [1,2,3,4,5]; var result02 = 1; var sum = 0; for(var value of arr06){ result02*=value; sum +=result02; } console.log(sum); // 6, 使用for - of求数组的最大数和最小数 var arr07 = [0,1,2,3,4,5]; var max = 0,min = 0; for(var value of arr07){ if(value>max){ max=value; }else if (value<min){ min=value; } } console.log(max); console.log(min); // 7, 掌握数组去重的多种方法. //用set去重 //用indexOf去重 数组方法 //findIndex实现 var arr08 = [1,2,1,2,3,4,3,1]; var indexs=[]; //接受数字第一次出现的下标,再根据下标拿值 for(var value of arr08){ var index= arr08.findIndex ((v)=>{ //findIndex()方法返回数组中满足提供的测试函数的第一个元素的索引。
return v == value; }) if(!indexs.includes(index)){ //includes()
方法用来判断一个数组是否包含一个指定的值,根据情况,如果包含则返回true
,否则返回false
。 indexs.push(index) } } console.log(indexs); //(4) [0, 1, 4, 5] // 8, 掌握各种循环的使用 for(var i in 4){ //万物皆可对象 没有运行结果也不会报错 console.log(i); //遍历对象或数组 } // for(var v of 4){ //ncaught TypeError: 4 is not iterable // console.log(v); //遍历数组 // } </script>
标签:pre,week03,console,log,练习,value,day05,数组,var 来源: https://www.cnblogs.com/eve-xin/p/16585928.html