day02 - javascript的逻辑分支

1.分支语句:

(1)if语句:

1.单分支

if(条件-最终结果必须是布尔型){    
	条件如果是true,就执行这里的代码
}

2.双分支

if(结果是布尔类型的条件){    
	条件是true的时候执行的代码
}else{    
	条件是false的时候执行的代码
}

3.多分支

if(条件){    
	条件是true的时候执行的代码
}else if(条件2{    
	如果条件2true的时候执行的代码
}else if(条件3{    
	如果条件3true的时候执行的代码
}...
0-0NaN,  undefined,  ' 'nullfalse,这些值放在if里会转换成false
多分支的最后也可以有一个else,来表示上述条件都不成立
简写扩展:1.条件可以直接放一个布尔值         
		2.如果大括号中只有一行打码,那么这个大括号可以省略

(2)switch语句:

switch(变量-得到一个值){    
	case1:
        如果小括号中的值和值1相等,就执行的语句    
	breakcase2:        
		如果小括号中的值和值2相等,就执行的语句    
	breakcase3:        
		如果小括号中的值和值3相等,就执行的语句    
	breakdefault:        
		上述条件都不满足执行的语句
}
switch的判断就是判断是否相等的,并且判断相等使用===来进行的

2.分支结构的嵌套:

例:定义三个变量,求出三个值中的最大值。
var a,b,c;
if(a>b){    
	if(a>c){       
		alert("变量a最大");    
	}else{        
		alert("变量c最大");    
	}
}else{    
	if(b>c){       
		alert("变量b最大");    
	}else{        
		alert("变量c最大");    
	}
}

3.类型的隐式转换:

(1)字符串拼接的时候

+号左右两边有一个是字符串,另一个也会悄悄地转换成字符串

(2) 数学运算的时候

除了+法的数学运算,别的数学运算,都会将两边的数据转换成数字进行运算

(3)进行比较的时候

 1. 比较运算的时候,左右两边只要有一个是数字,另一个也会转成数字进行比较 
 2. 如果两边都不是数字,则不能进行比较 
 3. 如果字符串转成数字成了NaN
	NaN和任何数字都没办法比较大小,跟任何数字比较都是false
	NaN自己也不等于自己
	NaN的类型是数字

(4)将数据放到分支结构中作为条件的时候

()中的值会转为布尔值

4.逻辑运算的高级用法:

短路运算

1.|| 或者:如果第一个值是false,就把第二个值赋给变量;如果第一个值是true,就把第一个值赋值给变量
2.&& 并且:如果第一个值是false,就把第一个值赋给变量,如果第一个是true,还会运行第二个值,就把第二个值赋给变量

5.三元运算/三目运算:

语法:
条件 ? 条件为true时要执行的代码 :条件为false时要执行的代码

注意:
1.三元运算符只能简化双分支,不能简化单分支和多分支
2.三元运算符可以将整个表达式当做一个值输出
	console.log(条件?条件为true时要执行的代码 :条件为false时要执行的代码)
3.三元运算符可以将整个表达式当做一个值赋值给一个变量
	var c =条件?条件为true时要执行的代码  :条件为false时要执行的代码  
console.log(c)
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值