if()
{代码块;
}
if
后面的括号内一般都是一个表达式
,但是最终只要有值
就行,并且这个值最终会转化为boolean
类型。
也可以理解为if
自含有隐式转换。
var str = prompt('请输入一个数字') ;
var b = parseInt(str) ;
// 从键盘上输入的东西一概是字符串,需要把这个字符串转化为数字;
if (b > 0)
{b = b + 5 ;
}
console.log(b);
单分支
其实可以理解为也是双分支
,只不过,单分支它只管符合的那个分支。不符合的时候,什么都不做。
就像下面这样:
if (b > 0)
{b = b + 5 ;
}
else
{}
单分支
和双分支
其实都可以理解为双分支
,也就是把一件事分成两种情况
去处理,符合条件
和不符合条件
。
单分支
只是处理了符合
条件的,不符合
条件的不管
。双分支
是都要处理
。if ( )
{代码块;
}
else
{代码块;
}
if (b > 0)
{b = b + 5;
}
else
{b = b + 10;
}
表达式 ? 值 : 值
:先执行第一个表达式(也就是 " ? " 前面的表达式),看看这个表达式是否为真。
真
,那么把冒号前面
的值,当做最后的结果假
,那么把冒号后面
的值,当做最后的结果利用三元表达式的特性,我们可以将其与双分支语句进行转换。
var a = 10;
if(a > 0)
{b = 5;
}
else
{b = a;
}
转换:
var a = 10
var b = a > 0 ? 5 : a;
什么时候,我们的三元表达式
可以替代双分支if语句
?
当双分支if语句
每个分支里面只有一行代码
的时候,我们就要考虑改为三元表达式
去写。
多分支
是把一件事分成多种情况
去考虑,每一种情况都要去处理
。
if ( )
{
}
else if ( )
{
}
else if ( )
{
}
else
{
}
var num = parseInt( prompt('请输入一个数字!') ) ;
if (num > 0 && num < 10)
{num += 1 ;
}
else if (num >= 10 && num < 100)
{num -= 1 ;
}
else if (num >= 100 && num < 200)
{num *= 2 ;
}
else if (num >= 200 && num < 500)
{num /= 2 ;
}
else
{num %= 3 ;
}
console.log(num) ;
输入钱数,如果超过100块我就去环游世界
var money = parseFloat( prompt('你有多少钱?') ) ;
if (money > 100)
{alert('带你去浪漫的土耳其') ;
}
// else
// {
// alert('老实在家呆着吧!') ;
// }
天气好就去看电影,不好就写代码
var isGood = parseInt( prompt('请输入表示天气的数字字符串') ) ;
if (isGood)
{alert('我要去看桃花侠大战菊花怪!') ;
}
else
{alert('在家苦逼敲代码!') ;
}
isGood
里面最终肯定有一个数字
。
在if
的小括号当中,最终系统是要把括号里面的值转化为boolean
的,所以我们可以不用显式转化。
所以当用户输入0
时,if
里的isGood
值为false
,输入其他数字时则为true
。
输入一个数,这个数如果大于0干啥,不大于0干啥
var num = parseInt( prompt('请输入一个整数!') ) ;
if (num > 0)
{alert('你喝!') ;
}
else
{alert('我喝!') ;
}
体重夸奖
70 ~ 90 骨感美
90 ~ 120 性感美
120 ~ 140 丰满美
140 ~ 160 肉感美
160 ~ 200 该减肥了
其它的 请输入合法体重
var weight = parseInt( prompt('请输入您的体重!') ) ;
if (weight >= 70 && weight < 90){alert ('骨感美!') ;
}
else if (weight >= 90 && weight < 120){alert ('性感美!') ;
}
else if (weight >= 120 && weight < 140){alert ('丰满美!') ;
}
else if (weight >= 140 && weight < 160){alert ('肉感美!') ;
}
else if (weight >= 160 && weight < 200){alert('该减肥了!') ;
}
else {alert ('什么鬼?') ;
}
分数判断
var score = parseInt( prompt('请输入您的分数,分数是0~100之间的数字!') ) ;
if(score >= 90 && score <= 100){alert ('A') ;
}
else if(score >= 80 && score < 90){alert ('B') ;
}
else if(score >= 70 && score < 80){alert ('C') ;
}
else if(score >= 60 && score < 70){alert ('D') ;
}
else if(score < 0 || score > 100){alert ('请重新输入合法的分数!') ;
}
else{alert ('不及格,重修去吧~!') ;
}
switch - case
分支语句,其实就是if多分支
的变种,为了代码可读性更好一些。
switch(有值的东西,最后这里面是一个值,不会进行转化)
{case 值:代码块;break;case 值:代码块;break;default:代码块;break;
}
case
代表的是“标号”
,它不是我们的代码语句,只是用来做对比
用的。switch
括号当中的值
和case
标号后面的值
相等
,那么就会执行对应的代码块。switch
括号当中的值
和case
标号后面的值
判等
,用的是严格判等
," === "
。有两个作用
,只会出现在switch
和循环语句
当中。
switch
当中,代表跳出switch
语句。循环
当中,代表跳出离它最近的那一层循环
。先求出小括号
当中的值
,接着会拿着这个值
从上到下
和所有的标号
后面的值
进行对比
, 如果判等成功
,就执行
相对应的代码块
。
var num = parseInt( prompt('请输入一个个位数!') ) ;
if (num == 1){alert('周一') ;
}
else if (num == 2){alert('周二') ;
}
else if (num == 3){alert('周三') ;
}
else if (num == 4){alert('周四') ;
}
else if (num == 5){alert('周五') ;
}
else if (num == 6){alert('周六') ;
}
else if (num == 7){alert('周日') ;
}
else {alert('请输入和星期对应的数字!') ;
}
使用switch分支
则是下面这样:
switch (num)
{
case 1:alert('周一');break; //跳出switch语句;
case 2:alert('周二');break;
case 3:alert('周三');break;
case 4:alert('周四');break;
case 5:alert('周五');break;
case 6:alert('周六');break;
case 7:alert('周日');break;
default:alert('请输入和星期对应的数字!');break;
}
输入分数,判定等级
var score = parseInt( prompt('请输入您的分数,分数是0~100之间的数字!') );
switch (true)
{
case score >= 90 && score <= 100:alert('A');break;
case score >= 80 && score < 90:alert('B');break;
case score >= 70 && score < 80:alert('C');break;
case score >= 60 && score < 70:alert('D');break;
case score < 0 || score > 100:alert('请重新输入合法的分数!');break;
default:alert('不及格,重修去吧~!');break;
}
有92汽油和95号汽油
92号汽油单价5元/L,如果加的超过30L就4元/L;
95号汽油单价6元/L,如果加超过40L就5元/L。
求计算任意一次加油,最后花了多少钱?
汽油加多少由键盘输入,汽油号也在键盘上输入。
var money = 0 ;
var oilL = parseInt( prompt('请输入您要加的油量') ) ;
var oilNumber = parseInt( prompt('请输入您要加的油号') ) ;
if (oilNumber == 92) // 92号油
{if (oilL > 0 && oilL <= 30) // 30升内{money = 5 * oilL ; // 5元每升}else if (oilL > 30) // 大于30升{money = 4 * oilL ; // 4元每升}else{alert('请输入正确的加油量');}
}
else if (oilNumber == 95) // 95号油
{if (oilL > 0 && oilL <= 40) // 40升内{money = 6 * oilL ; // 6元每升}else if (oilL > 40) // 大于40升{money = 5 * oilL ; // 5元每升}else{alert('请输入正确的加油量') ;}
}
else
{alert('请输入正确的油号:油号只有92和95') ;
}
console.log(money) ;
本文发布于:2024-02-08 19:39:29,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170739241068366.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |