前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >深度了解 JavaScript 中 三目运算符

深度了解 JavaScript 中 三目运算符

作者头像
全栈程序员站长
发布2022-09-13 10:14:55
1.3K0
发布2022-09-13 10:14:55
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是你们的朋友全栈君。

深度了解 JavaScript 中 三目运算符

初次写文章留作纪念 😃

三目运算符 的写法 及体征

通过一个简单的案例,让你更深层的了解判断类型的三目运算符的应用 分为 单条件 和 多条件 两种类型

单条件语法

多条件语法

布尔表达式 ? 表达式true执行 : 表达式false执行

布尔表达式1 ? 表达式1true执行 : (布尔表达式2 ? 表达式2的true执行 : 两个表达式都不成立执行语句)

条件 ? 成立结果 : 不成立结果

条件1 ? 成立结果1 : ( 条件2 ? 成立结果2 : 都不成立时的结果 )

var data = a<b ? a : b;

var str = a<b ? “true1” : (a<c ? “true2” : (a<d ? “true3”:“false123”));

解释:如果a小于b,a赋值给data,否则b赋值给data

解释:如果a小于b(条件1) ,就将”true1″赋值给str 、 再如果a小于c(条件2),就将”true2″赋值给str 、 再如果a小于d(条件3),就将”true3″赋值给str 、否则将“false123”赋值给str

可以理解为条件 ? 结果1 : 结果2

符号

理解

是格式要求。也可以理解为条件是否成立, 问号? 后面写条件成立时的结果

:

是当条件不成立时执行的结果

单条件

代码语言:javascript
复制
// 语法  布尔表达式 ? 表达式true执行 : 表达式false执行

例如:

代码语言:javascript
复制
		var a = 4,b = 2;
		var max = a<b?a:b;//三目运算符: 布尔表达式 ? true时执行 : false时执行
		console.log(max);//2

		//与if(){}else{}相似
		//换种写法 ↓
		if( a<b ){ 
    
			max = a;
		}else { 
   
			max = b;
		}

多条件

代码语言:javascript
复制
		/* <表达式1> ? <表达式2> : <表达式3>; "?"运算符的含义是:先求表达式1的值,如果为真,则执行表达式2,并返回表达式2的结果; 如果表达式1的值为假,则执行表达式3,并返回表达式3的结果。 */
代码语言:javascript
复制
// 语法  布尔表达式1 ? 表达式1true执行 : (布尔表达式2 ? 表达式2的true执行 : 两个表达式都不成立执行语句)

例如:

代码语言:javascript
复制
		var c = 3;
		console.log( c==2?"这是2":(c==1?"这是1":(c==3?"这是3":"这个数不是1、2、3")) );//"这是3"
		
		//使用 ***括号*** 是方便查看代码,方便阅读及程序执行
		//换种写法 ↓
		//与if(){}else if(){}else{}相似
		var str = "";
		if( c==2 ){ 
   
			str = "这是2";
		}else if( c==1 ){ 
   
			str = "这是1";
		}else if( c==3 ){ 
   
			str = "这是3";
		}else{ 
   
			str = "这个数不是1、2、3"
		}
		//惊奇之处: ***三目运算有返回值!**** 
		//而if语句 只会执行代码,没有返回值,除非自定义一个变量传入进去,进行赋值

建议在书写多条件的三目运算时,使用括号进行分隔开每段代码,方便自己查看以及程序执行

三目运算符执行多个条件

需求:我正在使用三目,我需要在满足条件中我让让它执行多个语句

三元运算符的结果语句可以执行多个操作,每个操作用逗号分隔就可以,例子如下:

代码语言:javascript
复制
	var a=1;
	使用括号用逗号分隔开多个语句       ↓
	a>5?(alert(1),alert(2)):(alert(3),alert(4))
总结 :
与 if 语句对比较,发现三目运算符的操作更便捷,并且 if 语句执行后发现没有返回值,应用场景不一样,而使用三目运算符恰恰又弥补了这个缺陷。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/148943.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 深度了解 JavaScript 中 三目运算符
    • 三目运算符 的写法 及体征
      • 单条件
      • 多条件
      • 三目运算符执行多个条件
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档