JavaScript Class 3
学习内容:
1.if else语句:
单条件判断
1 <script> 2 if(条件){ 3 要执行的语句块; 4 }else{ 5 不满足条件执行的语句块; 6 } 7 var a = 2; 8 var b = 4; 9 if(a<b){ 10 document.write("a小"); 11 }else{ 12 document.write("b小"); 13 } 14 15 if(b%a==0){ 16 document.write("b是a的整数倍数"); 17 } 18 </script>
2.if else if ...else语句
多条件判断,结尾处的else为以上条件都不满足时执行的语句
1 <script> 2 //else if 第二判断条件 3 var d = 15; 4 if(d<5){ 5 document.write("d小于5"); 6 }else if(d>=5&&d<10){ 7 document.write("d大于等于5小于10"); 8 }else if(d>=10&&d<20){ 9 document.write("d大于等于10小于20"); 10 }else{ 11 docuemnt.write("d不在范围内"); 12 } 13 </script>
3.switch语句
多条件判断,使用break分隔不同的判断语句
switch不只是如示例,只能判断数组下标,也可以判断字符串
1 <script> 2 var month=prompt("请输入月份:");//prompt()弹出输入框 3 var year =[31,28,31,30,31,30,31,31,30,31,30,31]; 4 var mon = parseInt(month)-1; 5 var x = month + "月"; 6 switch(mon){ 7 case 0: 8 alert(x+"有"+year[0]+"天"); 9 break; 10 case 1: 11 alert(x+"有"+year[1]+"天"); 12 break; 13 case 2: 14 alert(x+"有"+year[2]+"天"); 15 break; 16 case 3: 17 alert(x+"有"+year[3]+"天"); 18 break; 19 case 4: 20 alert(x+"有"+year[4]+"天"); 21 break; 22 case 5: 23 alert(x+"有"+year[5]+"天"); 24 break; 25 case 6: 26 alert(x+"有"+year[6]+"天"); 27 break; 28 case 7: 29 alert(x+"有"+year[7]+"天"); 30 break; 31 case 8: 32 alert(x+"有"+year[8]+"天"); 33 break; 34 case 9: 35 alert(x+"有"+year[9]+"天"); 36 break; 37 case 10: 38 alert(x+"有"+year[10]+"天"); 39 break; 40 case 11: 41 alert(x+"有"+year[11]+"天"); 42 break; 43 default: 44 alert("输入错误"); 45 }*/ 46 </script>
4. ++运算符
i++ 选运算后加, ++i 先加后运算
1 <script> 2 var a=1; 3 var b=a++; 4 var c=a; 5 document.write(c+"<br/>"); 6 //a先把1这个值赋给b,b的值是1,然后在+1,a加一后的值赋给c,c的值现在是2 7 var d=++a; 8 document.write(d);//d=2 9 </script>
5.for语句
循环判断语句
1 <script> 2 for (语句 1; 语句 2; 语句 3) 3 { 4 被执行的代码块 5 } 6 /*语句 1 在循环(代码块)开始前执行 7 语句 2 定义运行循环(代码块)的条件 8 语句 3 在循环(代码块)已被执行之后执行*/ 9 for(var i=0;i<10;i++){//循环10次 10 d = i++; 11 document.write(i+"<br/>"); 12 document.write(d+"<br/>");// i 的范围0-9 输出0 2 4 6 8 13 } 14 </script>
水仙花数:
1 <script> 2 for(var i=100;i<1000;i++){ 3 var bai = parseInt(i/100); 4 var shi = parseInt(i/10%10); 5 var ge = parseInt(i%10); 6 var sxh = bai*bai*bai+shi*shi*shi+ge*ge*ge; 7 if(sxh==i){ 8 document.write(sxh+"<br/>"); 9 } 10 } 11 </script>
斐波那契数列:
1 <script> 2 var a=[1,1]; 3 for(i=2;i<=10;i++){ 4 a[i] = a[i-1]+a[i-2]; 5 document.write(a[i]+"<br>"); 6 } 7 </script>
6.for in语句
可用于遍历数组
1 <script> 2 var a = [1,2,3]; 3 var x; 4 for(x in a){ 5 document.write(a[x]); 6 } 7 </script>
7.while 与do while语句
<scriipt> /*while (条件) { 需要执行的代码 }*/ while (i<5){ x=x + "The number is " + i + "<br>"; i++; } //在检查条件真假之前先执行一次,然后判断条件,若为真,循环 do { 需要执行的代码 } while (条件); do{ alert("已执行"); } while (false); </script>
8.break 与 continue
1 <script> 2 for(var i=0;i<10;i++){ 3 4 if(i==8){ 5 break; 6 } 7 document.write(i); 8 } 9 for(var m=0;m<10;m++){ 10 document.write(m); 11 if(m==5){ 12 continue; 13 } 14 } 15 for(n=0;n<10;n++){ 16 17 if(n%2==0){ 18 continue; 19 } 20 document.write(n); 21 } 22 </script>
PS:计算器:
1 <script> 2 var fn = prompt("请输入第一个数字:"); 3 var op = prompt("请输入运算符号:"); 4 var ln = prompt("请在输入一个数字:"); 5 var n1 = parseFloat(fn); 6 var o1 = op; 7 var ln = parseFloat(ln); 8 //eval() 函数可计算某个字符串,并执行其中的的 JavaScript 代码。 9 /*var sub = fn+op+ln; 10 var result; 11 eval("result="+sub);//result = sub的计算值; 12 alert(result);*/ 13 14 if(o1 == "+"){ 15 alert(n1+ln); 16 } 17 if(o1 == "-"){ 18 alert(n1-ln); 19 } 20 if(o1 == "*"){ 21 alert(n1*ln); 22 } 23 if(o1 == "/"){ 24 alert(n1/ln); 25 } 26 </script>