javascript . 02 break和continue、while、数组、冒泡排序
1.1 知识点
- NaN是number类型
- null是object类型
- /** + 回车 多行注释
- table 会为内部的tr td 自动补齐闭合标签
1.2 循环结构
1.2.1 Break和continue
a) Break:立即退出当前循环
b) Continue:退出本层循环
c) 两者之后的代码都不会执行
1.2.2 While
- While(判断条件){循环体;}
- do{循环体;}while(条件判断);
a) 任何情况下都会循环一次
b) 比while多循环一次
1.3 数组
1.3.1 知识点
- Ctrl+Alt+L;格式化代码
- 之前学习的数据类型,只能储存一个值
- 存储多个值的时候就用到了数组
- 数组的数据类型是object
- 未赋值的项是undefined
- 数组长度增加1,arr.length自增1
- 用老数组的长度,做为新数组的索引值
- 数组的长度,正好可以做为数组中最后一个元素后面的新元素的索引值
- 字面量定义:var array = [ 1 ,2 ,3];
- 对象定义: var array = new Array();
1.3.2 定义方式
a) Var array = new Array (数据1,数据2,…)
b) Var array = new Array(3); 设置数组长度为3
1.3.3 数组方法
- arr.length;数组长度
- arr[0];通过索引值获取元素/赋值
- 咸菜条和大碴子粥更配哦!
- 遍历就是获取组的每一项
- for (var I =0; i < arr.length; i++){
- console.log( arr[ i ] );
- }
- 双重for循环
- 指定比较次数和轮数
1.3.4 数组遍历
var arr = [44,55,345,74575,23475,23546,q345,243,235,] ; for( i=0; i<arr.length; i++) { console(arr[i] }
1.3.5 冒泡排序
a) 比较轮数,数组长度-1
b) 比较次数,数组长度-1
- 判断是否符合标准
- 交换比较的值
// 交换俩数
var a = 10; var b = 20; var sum = a+b; b = sum - b; a= sum-a; console.log("a:"+a+"---"+"b:"+b);
九九乘法表
1 document.write("<table border='1' >"); 2 for( i=0;i<=9;i++){ 3 document.write("<tr>"); 4 for( j=1; j<=i;j++){ 5 document.write("<td>"+j+"*"+i+"="+i*j); 6 } 7 } 8 document.write("</table>");
1到100能被7整除的和
1 var sum = 0; 2 for(i=1;i<=100;i++){ 3 if(i%7!==0) 4 { 5 sum += i; 6 } 7 8 } 9 alert(sum);
无限循环练习
do{ var bool = confirm("此山是我开,此树是我栽,要想从此过,留下买路财"); if (bool){ alert("请刷卡"); } }while( !bool);
计算出1—100之间不能被3整除的和大于(或等于)2000的整数。
var a ; var sum =0; for(a=1;a<=100;++a ){ if(a%3 !== 0){ sum +=a; } if(sum>2000){ alert(sum); } }
1 var arr =[32,33,44,5,6,7,88,99,22,]; 2 var maxValue = 0; 3 var maxIndex = 0; 4 var minValue = 0; 5 var minIndex = 0; 6 for(i=0; i<arr.length; i++){ 7 if(arr[i]>arr[maxIndex]){ 8 maxValue = arr[i]; 9 maxIndex = i ; 10 } 11 if(arr[i]<arr[minIndex]){ 12 minValue = arr[i]; 13 minIndex = i ; 14 } 15 } 16 console.log("最大值"+maxValue+"---"+maxIndex+"最小值"+minValue+"---"+maxIndex);
var arr=[0,1,2,3,4,5,6,7,8,9]; for(i=0;i<arr.length/2;i++){ var tem = arr[ arr.length-1-i ]; arr[ arr.length-1-i ] = arr[i]; arr[i] = tem ; } alert(arr);
冒泡排序
var arr = [77,64,53,22,31,24,55]; // 数组的下标 控制循环轮数 for(var i=0;i<arr.length-1;i++){ var bool = true; // 内循环控制循环次数 for(var j=0;j<arr.length-1-i;j++){ // 小->大 if(arr[j]>arr[j+1]){ var temp = arr[j]; arr[j] = arr[j+1]; arr[j+1] = temp; bool = false; // 若此步骤运行了,说明可能没有排好,下一步可能还继续需要比较 } } // 若上一步没有运行,说明每个元素都已经(提前)按照顺序排好了 if(bool){ break; } } alert(arr);
作者:明明
出处: http://www.cnblogs.com/mingm/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意,必须保留此段声明,且在文章页面明显位置给出原文链接,否则保留追究法律责任的权利。