表达式 (expr1) ? (expr2) : (expr3)

在 expr1 求值为 TRUE 时的值为 expr2,在 expr1 求值为 FALSE 时的值为 expr3。

类似于java 的if

if  (true)  {

}else{

}

日常中经常会有这样的 if else 判断,特别是嵌套比较多的时候 用三元是比较和谐的,可以让你的代码看起来更加清爽,结构清晰。

稍微聪明点的用法
通过不断的变化,可以衍生出很多三元的用法

代码如下:
1、flag ? $('body').addClass('hover') : $('body').removeClass('hover') ;

2、$('.item')[ flag ? 'addClass' : 'removeClass']('hover')

上面的代码看着比较困惑。因为当flag = true 的时候 ,代码就变成以下代码:

代码如下:
$('.item')['addClass']('hover')

这样写法等同于。

代码如下:
$('.item').addClass('hover')

再升华一下

可以根据需要来调用自己想要的function来处理更多的事情。
function a(){
do something
}
function b(){
do something
}

flag ? a() : b();

转至https://www.cnblogs.com/sxz2008/p/6432290.html

js三元表达式使用方法概述相关推荐

  1. java前端有三元表达_放心写 JS 三元表达式

    本文鼓吹各位 前端 在写 JS 的时候放心大胆写三目表达式, 不要人云亦云说「不建议使用三元表达式」.欢迎交流不同意见. 三元表达式是啥? 三元表达式怎么用? 1. 赋值: const foo = c ...

  2. JS 三元表达式和箭头函数

    三元表达式 vue.js中三元运算符的表达式: (expression1)  ?  (expression2)  :  (expression3) 在  expression1  求值为  true ...

  3. js“三元表达式” (三元运算符)

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/liu_jiachen/article/ ...

  4. js三元表达式的连写

    js 的三元表达式连写 const { level } = item this.dialogTitle = level === 1 ? '添加一级菜单' : (level === 2 ? '添加二级菜 ...

  5. js 三元表达式 switch语句

    目录 一:三元表达式 1:什么是三元表达式? 2:语法结构 二:switch语句(条件判断语句) 1:switch 语句也是多分支语句 2:语法结构: 3:注意事项: 4:switch和if else ...

  6. js三元表达式判断大小

    三元表达式可以理解为判断,和 if () else()一样,像是它的简写. 以下代码是判断三个数值得大小: <script type="text/javascript"> ...

  7. JS三元表达式与”||“的关系

    今天合并同事的代码的时候,看到接口传参里面有用到三元表达式,类似下面这种 param = {uuId: this.xxx.xxx.id ? this.xxx.xxx.id : null,morgId: ...

  8. JS三元表达式动态改变显示内容

    根据后端传的值,来显示不同内容 1.条件写在差值作用域中 <view class=""><text style="margin-left: 95rpx; ...

  9. js 三元表达式的写法

    句式一. if(a) do_a elseif(b) do_b else do_c 转化为: =>a ? do_a : b ?do_b : do_c 句式二. if(a) do_a 转化为: =& ...

最新文章

  1. 在Mac上设置环境变量并永久生效的方法
  2. 使用VM虚拟机的一点小技巧
  3. Java获取系统日期时间
  4. 2!=5 or 0在python中是否正确-不吹不擂,你想要的Python面试都在这里了【315+道题】...
  5. 采用TCPListener/TCPClient实现图片传输
  6. hdu4549 M斐波那契数列
  7. Netty源码 服务端的启动
  8. xenserver 虚拟机扩容lvm磁盘分区的方法_从零开始学Linux运维|35.LVM(逻辑卷管理)的创建...
  9. varnish介绍以及虚拟机的封装
  10. mysql5.7 glibcxx_3.4.15_Requires: libstdc++.so.6(GLIBCXX_3.4.15)(64bit)
  11. CodeForces - 222C Reducing Fractions(唯一分解定理)
  12. Pytorch离线安装 matlibplot
  13. 循环结构格式 java
  14. 《创新思维训练》2021网课章节测验及答案
  15. 洛克菲勒写给儿子的38封信
  16. 孙子算经-秦王暗点兵问题
  17. QT项目负责人必须掌握的Ui设计师功能——Promote to !
  18. 币小秘:如何才能减少被套,降低风险!
  19. 准备了 185 万养老金
  20. java关键字super指什么_java 关键字super详解及用法

热门文章

  1. 【现代机器人学】学习笔记七:开链动力学(前向动力学Forward dynamics 与逆动力学Inverse dynamics)
  2. []575. Distribute Candies
  3. 【定积分】区间再现公式的证明及其推论
  4. java 获取string值_java如何获取String里面的键值对:key=valuekey=value
  5. C语言常见字符串处理string.h库函数strstr、strchr、strcat、strcmp、strcpy、strlen的介绍
  6. spring之----事务
  7. 炒股的最简单方法 炒股的管理和纪律要求
  8. STM32F4的LED点灯
  9. 论文阅读”NCAGC: A Neighborhood Contrast Framework forAttributed Graph Clustering“(arxiv)
  10. 第28届奥运会奖牌榜