JavaScript中的常用语句
选择结构语句--根据判断条件的执行结果【boolean值】
if语句:
1、if(判断){需要被执行的javascript代码}
先执行判断,判断为true时执行“{}"
2、if(判断){对的的执行}esle{错误的执行}
先执行判断,判断为true时执行“{对的的执行}"判断为false时执行"{错误的执行}"
3、if(判断1){判断1为true}esle if(判断2){判断2为true}...else{所有判断都是为false}
先执行判断1,判断1为true时执行“{判断1为true}"
判断1为false时执行,执行判断2
........
如果所有的判断执行都为false,执行最后一个"{}"
4.if(){}else{}的嵌套
if(判断1){
if(判断2){
判断1为true,&& 判断2为true
}else{
判断1为true,&& 判断2为false
}
}else{
if(判断3){
判断1为false,&& 判断3为true
}else{
判断1为false,&& 判断3为false
}
}
<script>
function testif(){
var age = 20;
if( age > 18){
alert("只选对的");
}
}
function testif2(){
var age = 20;
if(age>18){
alert("成年人");
}else{
alert("未成年人");
}
}
function testif3(){
var chengji = -15;
if(chengji>0 && chengji<60){
alert("不及格,D级");
}else if(chengji>=60 && chengji<80){
alert("及格,C级");
}else if(chengji>=80 && chengji<90){
alert("优秀, B级");
}else if(chengji>=90 && chengji<=100){
alert("真棒,A级");
}else{
alert("错误错误错误");
}
}
function testif4(){
var chengji = 75;
if(chengji>=60){
if(chengji<80){
alert("及格");
}else{
alert("优秀");
}
}else{
if(chengji>0){
alert("不及格");
}else{
alert("成绩为负数");
}
}
}
</script>
switch语句
switch(表达式){
case 数值1: 表达式==数值1[javascript代码1];[break]
case 数值2: 表达式==数值2[javascript代码2];[break]
case 数值3: 表达式==数值3[javascript代码3];[break]
......
case 数值n: 表达式==数值n[javascript代码n];[break]
defualt:表达式与case后面的数值比较全部失败
}
先执行表达式得到一个结果,用结果值与case后面的数值比较,如果比较成功,就执行对应case后面的,JavaScript代码,直到碰到break就结束执行
结果值与case后面的数据值比较,如果失败,就与下一行的case后面的数据值....以此类推,直到所有的case后面的数据值都比较失败,就执行defualt后面的JavaScript代码
当与case后面的数据值对比成功后,没有break,直接与下一行的case进行比较,直到碰到break为止。
<script>
function testswitch(){
var num1=10;
var num2=3;
var oper="+";
switch(oper){
case "+" : alert(num1+"+"+num2+"="+(num1+num2));break;
case "-" : alert(num1+"-"+num2+"="+(num1-num2));break;
case "*" : alert(num1+"*"+num2+"="+(num1*num2));break;
case "/" : alert(num1+"/"+num2+"="+(num1/num2));break;
default:alert("判断失败");
}
}
</script>
2.循环结构语句
(1)for循环
1.for循环
格式:
for(初始条件;判断条件;循环增量/减量){
需要被重复执行的javascript代码
}
初始条件--变量的创建,设置循环的起始
判断条件--比较表达式,设置循环的结束
循环增量/减量--修改初始条件的值
先执行初始条件,后执行判断条件---true--{}--循环增量/减量--判断条件--.....直到判断条件的值 为 false时结束循环
(2)while循环
格式:
while(判断条件){
需要被重复执行的javascript代码
}
1.没有初始条件,需要在循环结构之外定义
2.没有循环增量/减量的控制条件,需要在循环结构之内{}的最后一句加上
先执行判断条件--true--{}
----false结束执行
(3)dowhile循环
格式:
do{
需要被重复执行的javascript代码
}while(判断条件)
1.没有初始条件,需要在循环结构之外定义
2.没有循环增量/减量的控制条件,需要在循环结构之内{}的最后一句加上
先执行{需要被重复执行的javascript代码},执行while后面判断条件
判断条件--true--do{需要被重复执行的javascript代码}
----false结束执行
<script>
function testfor(){
/*
for(初始条件;判断条件;循环增量/减量){
需要被重复执行的javascript代码
}
初始条件--变量的创建,设置循环的起始
判断条件--比较表达式,设置循环的结束
循环增量/减量--修改初始条件的值
先执行初始条件,后执行判断条件---true--{}--循环增量/减量--判断条件--.....直到判断条件的值
为false时结束循环
*/
//循环输出1~10的整数
/*
for(var i=1;i<=10;i++){
alert("i=="+i);
}
*/
//循环输出10~1的整数
/*
for(var i=10;i>0;i--){
alert("i=="+i);
}
*/
//计算1~100的整数和 【5050】
var sum=0;
for(var i=1;i<=100;i++){
sum=i+sum;
}
alert(sum);
//sum=0 i=1 i+sum==1+0=1 --sum=1 i++---i=2
//sum=1 i=2 i+sum==2+1=3 ---sum=3 i++---i=3
//sum=3 i=3 i+sum==3+3=6 ---sum=6 i++---i=4
//.............
}
//阶乘 1!+2!+3!+...+10!
//斐波那契数列的前20项和
function testwhile(){
/*
while(判断条件){
需要被重复执行的javascript代码
}
1.没有初始条件,需要在循环结构之外定义
2.没有循环增量/减量的控制条件,需要在循环结构之内{}的最后一句加上
先执行判断条件--true--{}
--false结束执行
*/
//循环输出1~10的整数
/*
var j=1;
while(j<=10){
alert("j=="+j);
j++;
}
*/
//循环输出10~1的整数
/*
var i=10;
while(i>0){
alert("i=="+i);
i--;
}
*/
//计算1~100的整数和 【5050】
var sum=0;
var i=1;
while(i<=100){
sum=i+sum;
i++;
}
alert(sum);
}
function testdowhile(){
/*
do{
需要被重复执行的javascript代码
}while(判断条件)
1.没有初始条件,需要在循环结构之外定义
2.没有循环增量/减量的控制条件,需要在循环结构之内{}的最后一句加上
先执行{需要被重复执行的javascript代码},执行while后面判断条件
判断条件--true--do{需要被重复执行的javascript代码}
--false结束执行
*/
//循环输出1~10的整数
/*
var j=1;
do{
alert("j=="+j);
j++;
}while(j<=10);
*/
//循环输出10~1的整数
/*
var i=10;
do{
alert("i=="+i);
i--;
}while(i>0);
*/
//计算1~100的整数和 【5050】
var sum=0;
var i=1;
do{
sum=i+sum;
i++;
}while(i<=100)
alert(sum);
}
</script>
while循环--先判断后循环
do{}while循环--先循环后判断
当判断条一开始为false的时候,do{}while循环会比while循环多执行一遍
while循环和do{}while循环与for循环的差别?
for循环的判断条件是一个比较表达式,需要明确循环的次数
while循环和do{}while循环的判断条件可以是一个boolean值,需要明确循环的次数
3.其他语句
break语句--结束switch语句的执行,也可以循环执行。
continue语句---结束当前,进入下一次执行
function testBreak(){
for(var i=1;i<=10;i++){
alert("i=="+i);
if(i==5){
break;
}
}
}
function testcontinue(){
for(var i=1;i<=10;i++){
if(i==5){
continue;
}
alert("i=="+i);
}
}