javascript循环和数组的基础练习
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript循环和数组的基础练习相关的知识,希望对你有一定的参考价值。
九九乘法表
1 <script> 2 //外层循环行数 3 for(var i=0; i<=9; i++){ 4 //内曾循环控制每一行的列数 5 for(var j=0;j<=i; j++){ 6 document.write(j + "×" + i + "=" + i*j + " "); 7 } 8 document.write("<br>"); 9 } 10 </script>
任意输入一个整数,求它的位数。
1 <script> 2 //prompt输入得到的是字符串类型的,parseInt可以把字符串转换为数字,取到的结果为整数,小数部分得不到。 3 var num=parseInt(prompt("请输入一个数")); 4 if(isNaN(num)==false){ 5 var a=1; 6 while(num>=10){ 7 num=parseInt(num/10); 8 a++; 9 } 10 console.log(a); 11 } 12 </script>
正向遍历数组
1 <script> 2 var arr=[1,2,3,4,5]; 3 for (var i = 0; i <arr.length; i++) { 4 console.log(arr[i]); 5 } 6 </script>
将1-100中所有奇数放到数组中
1 <script> 2 var arr=[]; 3 for (var i = 0; i <=100; i++) { 4 if(i%2!=0){ 5 arr[arr.length]=i; 6 } 7 } 8 </script>
求一组数中的所有数的和
1 <script> 2 var arr=[1,2,3,4,5]; 3 var sum=0; 4 var a; 5 for (var i = 0; i < arr.length; i++) { 6 sum=sum+arr[i]; 7 } 8 console.log(sum); 9 </script>
求一组数中的最小值及其索引值
1 <script> 2 var arr = [4, 7, 9, 2, 6, 3, 1, 0]; 3 //假设一个最小值,保存在minValue中 4 var minValue = arr[0]; 5 var minIndex = 0; 6 for (var i = 1; i < arr.length; i++) { 7 //用minValue跟每一项去比较,如果当前项更小,我们要更新minValue 8 if (minValue > arr[i]) { 9 //说明有值比minValue小 10 minValue = arr[i]; 11 //由于i为索引,我们在对minValue更新的同时记录i的值 12 minIndex = i; 13 } 14 } 15 console.log(minValue); 16 console.log(minIndex); 17 </script>
要求将数组中的0项去掉,将不为0的值存入一个新的数组,生成新的数组
1 <script> 2 var arr = [4, 0, 7, 9, 0, 0, 2, 6, 0, 3, 1, 0]; 3 //第一步,先声明一个结果数组 4 var resultArr = []; 5 //第二步遍历arr 6 for (var i = 0; i < arr.length; i++) { 7 //arr[i]就是arr中的每一项,我们将不为0 的放到resultArr中 8 if (arr[i] == 0) { 9 continue; 10 } 11 //走到这的都不是0 12 resultArr[resultArr.length] = arr[i]; 13 } 14 console.log(resultArr); 15 </script>
冒泡排序,从小到大
1 <script> 2 var arr=[5,7,3,6,2,8]; 3 //声明一个变量,记录比较的趟数 4 var count=0; 5 //比较的次数为arr.length-1 6 for(var i=0;i<arr.length-1;i++){ 7 count=0; 8 //外层循环控制趟数,执行多少次就是比了多少趟 9 //在每一趟开始的时候,我假排序已经完毕了 10 for(var j=0;j<arr.lenght-i-1;j++){ 11 //每一趟执行的次数,在每一次比较中唯一需要做的是比大小 12 if(arr[j]>arr[j+1]){ 13 //交换两个变量的值,需要中转变量 14 var temp=arr[j]; 15 arr[j]=arr[j+1]; 16 arr[j+1]=temp; 17 //只要有任何一趟比较,完全没有进入if,说明排序已经完成了,我们就可以跳出 18 //如果进入了这个if,说明比了一次,让计数加1 19 count++; 20 } 21 } 22 //判断一下每一趟交换的次数,如果没发生交换,count为0,说明排序结束,我们可以跳出 23 if(count===0){ 24 break; 25 } 26 } 27 </script>
以上是关于javascript循环和数组的基础练习的主要内容,如果未能解决你的问题,请参考以下文章