JavaScript学习笔记之条件语句篇
1. if 语句:
if 语句的形式为:
if(条件){
// 执行语句
}
他的原理是,当小括号里的条件转化为布尔值为真的时候,才会执行大括号里边的语句。
示例:
//1:
if(1>0){
//1>0 为真,所以会执行后边的语句
document.write("123")
}
//2:
if(1>2){
//1>2 为假,所以不会执行 后边的语句
document.write("123")
}
//3:
if(1>0&&8>9){
//有与运算符,之前讲的,一个一个判断,1>0 为真,继续往下看,8>9 是假的所以整个括号里边返回假,所以不会执行
document.write("123")
}
//4:
if(1>0||8>9){
//或运算符,1>0 是真的,直接返回,括号里返回真,执行后边的语句
document.write("123")
}
所以在 if 语句里,&& 可以理解成并且,全真 才为真,才会执行后边的语句,|| 理解成或者,有一个真就为真就会执行语句,全假才为假。
if 和&&转换 :
if(2>1){
document.write("a");
}
//等同于
2>1 && document.write("a");
2. if else if语句:
if else if语句的形式为:
if(条件1){
// 执行语句1
}else if(条件2){
// 执行语句2
}else if(条件3){
// 执行语句3
}
if else if 语句可以理解为同一类条件下多个 if 语句的集合,当满足括号里哪个条件则执行哪条语句
示例:
var score = 89;
if(score >= 80 && score <= 100){
document.wiret("优秀!");
}else if(score >= 60 && score <= 80){
document.wiret("及格!");
}else{
document.wiret("仍需努力哦!");
}
这里的 var score = 89; 是输入一个 0-100 的成绩,当成绩在 80-100 分之间则会输出 “优秀!”;当成绩在 60-80 之间则会输出 “及格!”;如果成绩不在上述两个区间则会输出 “仍需努力哦!”
3. switch case 语句:
switch case 语句的形式为:
switch(1){
case 1:
console.log('a');
case 2:
console.log('b');
case 3:
console.log('c');
}
我们 if 语句小括号里放的是条件判断,而 switch 里边小括号放的是条件,case 才是真正的判断,假如说括号里的条件和 case 后边的值相比对,一样的话就会执行 case 后边的语句,小括号里的值和 case 后边的值可以是数字、字符串、true 等等都可以, 也可以在外边 var 一个变量并赋值,把变量名放在小括号里边。但是例如上边的,假 如说小括号里边放的是 3 的话,输出 c 没有问题,但是如果小括号里边放的是 1 的话 他就会把 abc 都输出,如果小括号里是 2 的话输出 bc,也就是说只要它判断到哪里, 假如说值是一样的,他就会把后边的所有语句全部执行,解决的办法就是在 case 后边 的语句结束之后加上一个 break;, break 就是终止语句,终止循环的意思。假如说判 断到哪里读到了 break 他就会跳出语句,不会继续往下执行。
示例:编写一个程序,当输入周一到周五的时候,输出 working,输入周六或周日的时 候输出 relaxing。
var date = window.prompt('input');
switch(date){
case "周一":
case "周二":
case "周三":
case "周四":
case "周五":
console.log('working');
break;
case "周六":
case "周日":
console.log('relaxing');
break;
}
解析:var date = window.prompt(‘input’); 是把输入的值直接赋给变量(和 parseInt(window.prompt(“input”)); 不同的是不用转换成整形直接赋值),这里的写法是简化后的,假如输入周一也会一直往下看执行那个语句,功能一样的。
3. 知识点 break:
break 的真正作用是终止循环,我们可以认为 switch case 也是一种循环,break 还可 以用于 while 循环和 for 循环,比如:
var i = 0;
while(1){
i++;
console.log(i);
if(i > 100){
break;
}
}
在此例中,while 里的条件是 1,所以这个循环永远不可能结束,是死循环,但是我们让它当 i 大于 100 的时候就终止循环,那么他就会输出 1-101.在有一些循环里你不太好控制它到底循环多少圈,而你又希望他到特定的条件停止,这个时候 break 就是一个最好的选择。但是 break 必须写到循环里边,如果写到循环外边他会报错的。同样,break 也可以用于 for 循环。比如:
var i;
var sum = 0;
for(i = 1;i <= 100;i++){
sum += i;
console.log(i);
if(sum > 100){
break;
}
}
我们让 1-100 这些数加起来,但是我们想知道当加到多少的时候就超过 100 了?我们就可以这么写。
4. 知识点 continue:
continue 的作用是终止本次循环进行下一轮循环,就是当满足特定条件之后他就不会执行循环体,进行下一轮循环。
反向敲 7:输出 0-100 除了能被 7 整除和个位有 7 之外的所有数。
for(var i = 0;i <= 100;i++){
if(i % 7 == 0 || i % 10 == 7){
continue;
}
console.log(i);
}
解析:当 i 能被 7 整除或者摩尔 10 余 7 的时候让他终止本次循环,进行下一轮循环即可。
注:关于循环详见下篇。
声明:作者通过观看渡一教育免费公开课及相关文档总结的笔记,不做任何商业用途,仅供学习交流,感谢指正,如有侵权烦请立马联系,欢迎转载,请注明出处。