首页 > 代码库 > javascript循环和数组的基础练习

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 = http://www.mamicode.com/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 =http://www.mamicode.com/ 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        //走到这的都不是012        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,说明比了一次,让计数加119             count++;20         }21     }22 //判断一下每一趟交换的次数,如果没发生交换,count为0,说明排序结束,我们可以跳出23 if(count===0){24     break;25 }26 }27 </script>

 

javascript循环和数组的基础练习