本博文源于js基础,本篇博文包括以下内容:
引言
例如:在计算面积,用户输入边长,如果边长输入负数,需要提示错误,不予计算,因此代码应该是这样的:
var r = Number(prompt("请输入半径"));
if(r<=0) {
alert("你输入的半径不正确!");
}else {
var area = 3.14*r*r;
alert(area);
}
if语句
这地方跟普通的语言类似,格式如下:
if(测试条件) {
测试条件真时执行
}else {
测试条件假时执行
}
可省略else例如下面
if(测试条件) {
测试条件真时执行
}
单行的时候可以不用花括号,例如
if(3>6)
alert("A");
else
alert("B");
多分支if语句
这个也跟其它语言类似,多分支只会执行一次。格式如下:
if (测试条件1) {
测试条件1true执行语句
}else if(测试条件2) {
测试条件2true执行语句
}else if(测试条件) {
测试条件3true执行语句
}else {
测试条件4true执行语句
}
if语句的嵌套
if(测试条件) {
if(测试条件) {
测试条件真时执行
}
}
switch语句
跟c相同,语法格式如下:
switch(变量) {
case 值1:
等于值1执行的语句;
break;
case 值2:
等于值2执行的语句;
break;
case 值3:
等于值3执行的语句;
break;
case 值4:
等于值4执行的语句;
break;
default:
与上面的值都不相等才执行的语句;
break;
}
三元运算
跟c类似,格式如下:
条件表达式?表达式1:表达式2;
短路计算实现条件分支
太漂亮了!第一次遇到!
逻辑运算符“&&”的短路计算也可以实现条件分支。
var age = prompt("你输入你的年龄");
age >= 18 && alert("你成年了");
短路逻辑与应该是“都真才真”。在a&&b运算中,a真则b执行,a假则b不执行(短路).这样的话只有一行且没有else部分的if语句都可以改写为短路语法。例如:
if (age > 18) alert("成年了");
可以改写为:
age > 18 && alert("成年了");
看起来多打两个字符,挺麻烦。但是大家做到,别人写这个代码自己看得懂。如果别人问自己有没有学过js,用这一句亮瞎它们对选择语句的三观。