文章目录
javaScript 条件语句
① 分支语句
if语句:
1、语法(一种条件的判断)
if(condition){ //括号里的条件成立时,就执行里面的声明语句
statement;
}
// 语法例子
var age = 35;
if(age > 18){ //age满足括号里的条件
alert("你已经成年了"); //就会出现弹出框
}
2、语法(两种条件的判断)
if(condition){ //括号里的条件成立时
statement1; //就执行里面的语句
}else{
statement2; //否则执行这里的语句
}
//语法:prompt()
//功能:弹出输入框
//返回值:
//1、点击确定,返回输入内容
//2、点击取消,返回null
//让用户输入变量值
//语法例子
var age = prompt("请输入你的年龄?");
if(age < 18){
alert("你还没有成年。");
}else{
alert("你已成年,请提供你的身份证号。");
}
3、语法(三种以上的条件判断)
if(condition){
statement1;
}else if(condition){
statement2;
}else{
statement3;
}
例子:
age<18岁,您还未成年。
18< age <59,您可以进入。
age = 其他,您已超出年龄限制。
// 语法例子
var age = prompt("请输入您的年龄");
if(age<18){
alert("您还没有成年");
}else if(age>=18 && age<=59){
alert("您可以进入");
}else{
alert("您已超出年龄限制");
}
if语句的嵌套:
例子:
密码:{长度不等于6位(请输入6位数字密码)}、{密码类型:非数字(密码必须是6位数字)、数字(密码设置正确)}
var password = prompt("请设置您的密码");
//判断密码的长度,如果不是6位,否则
//功能:获取string字符串的长度
//语法:string.length
//返回值:number
if(password.length !=6){
alert("请输入6位的数字密码");
}else{
//如果密码的长度等于6,才会执行下面的语句,再进行判断
//如果密码是非数字,否则是数字
//isNaN 检测是否为非数字
if(isNaN(password)){//就是非数字
alert("密码必须要数字");
}else{
alert("密码设置正确");
}
}
switch语句:
多条件(3个以上)的判断 可以使用switch语句。
功能:获取星期
语法:new Date().getDay()
返回值:number(0~6)
switch语句语法:
switch(expression){ //对 expression 进行判断
case value:statement //条件,执行语句
break;//退出
case value:statement
break;
...
default:statement //都不符合条件,就执行default,默认
}
例子:
var week = new Date().getDay();
console.log(week); //输出返回的结果是number:2,就是星期二
switch(week){
case 0:document.write("今天是星期日");
break;
case 1:document.write("今天是星期一");
break;
case 2:document.write("今天是星期二");
break;
case 3:document.write("今天是星期三");
break;
case 4:document.write("今天是星期四");
break;
case 5:document.write("今天是星期五");
break;
default:document.write("今天是星期六"); //如果week的值范围只有0~6,如果不等于0~5,那就是只有等于6
}
例子:简化
var week = new Date().getDay();
var weekstr = "";
switch(week){
case 0:weekstr="日";
break;
case 1:weekstr="一";
break;
case 2:weekstr="二";
break;
case 3:weekstr="三";
break;
case 4:weekstr="四";
break;
case 5:weekstr="五";
break;
default:weekstr="六";
}
document.write("今天是星期"+weekstr);
② 循环语句
for语句:
语法:
for(语句1;语句2;语句3){
被执行的代码;
}
//语句1:在循环(代码块)开始前执行
//语句2:定义运行循环(代码块)的条件
//语句3:在循环(代码块)已被执行之后执行
例子:
//循环1~100
//语句1:循环的初始值
//语句2:循环的条件
//语句3:变量的变化
for(var i=1; i<=100; i++){
document.write(i+"<br/>");
}
//循环100以内的奇数,输出99 97 95 ...3 1
for(var m=99; m>=1; m-=2){
document.write(m+"<br/>")
}
for语句的嵌套:
当循环与循环发生嵌套时遵循下列规则:
1、外层为假时内层不执行;
2、先执行外层再执行内层,直至内层的条件为假时再返回外层去执行。
例子:
// 输出 1 12345,
// 2 12345,
// 3 12345
// 第一位数的1 2 3 是for循环的外层
// 后面的12345 是嵌套的for循环
for(var i=1; i<=3; i++){
document.write(i+"<br/>");// 1 2 3
for(j=1; j<=5; j++){
document.write(j+"<br/>");//1 2 3 4 5 1 2 3 4 5 1 2 3 4 5
}
}
while语句:
语法:
while(条件){//当条件满足时,执行里面的代码
需要执行的代码;
}
例子:输出1~100
var i=1;
while(i<=100){
document.write(i+'<br/>');
i+=1 //i++
}
例子:计算1+2+3+4+…100=的和
var sum=0; //初始sum的和
var n=1;
while(n<=100){
sum+=n; //sum=sum+n
n++;
}
document.write(sum);
do-while语句:
语法:
do{
需要执行的代码
}while(条件)
说明:这种语法的循环至少要被执行一次。
例子:
// 输出1~10的偶数
var j =1;
do{
if(j%2==0){//判断是偶数
document.write(j+"<br/>");
}
j++
}while(j<10);
总结for与while的区别:
for语句:适合已知循环次数的循环体。
while语句:适合未知循环次数的循环体。
③ break语句和continue语句
可以精确的控制循环在代码中执行的语句。
break:立刻退出循环。
continue:结束本次循环,继续开始下一次。
for(var i=1; i<10; i++){
//如果i是5的倍数,退出
if(i%5==0){
break;
}
document.write(i+"<br/>"); //输出1 2 3 4 就退出
}
for(var i=1; i<10; i++){
//如果i是5的倍数,退出
if(i%5==0){
continue;
}
document.write(i+"<br/>"); //输出1 2 3 4 6 7 8 9 就退出
}
例子:
//输出所有0~50之间,除20和30之外的5的倍数
for(var n=0; n<=50;n+=5){
// console.log(n); //0~50中5的倍数
if(n==20 || n==30){
continue;
}
console.log(n);
}