js|选择语句(包括短路实现计算实现条件分支)

本博文源于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(变量) {
	case1:
		等于值1执行的语句;
		break;
	case2:
		等于值2执行的语句;
		break;	
	case3:
		等于值3执行的语句;
		break;
	case4:
		等于值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,用这一句亮瞎它们对选择语句的三观。

猜你喜欢

转载自blog.csdn.net/m0_37149062/article/details/106212344
今日推荐