javascript三目运算符有哪些


本文摘自PHP中文网,作者青灯夜游,侵删。

javascript只有一个三目运算符“? ... :”,可用于简单的选择结构,基本语法为“布尔表达式 ? sentence1 : sentence2”;当“布尔表达式”的值为真时,执行sentence1,否则执行sentence2。

本教程操作环境:windows7系统、ECMAScript 5版、Dell G3电脑。

javascript 三目运算符

javascript中的三目运算符用作判断时,基本语法为: expression ? sentence1 : sentence2

expression的值为真时执行sentence1,否则执行 sentence2, 请看代码

1

2

3

4

5

6

7

var b = 1,

       c = 1

       a = 2;

   a >= 2 ? b++ : b--;

   b   // 2

   a < 2 ? c++ : c--;

   c   // 0

从上面代码中,我们暂时会认为三目运算符相当于if + else(下面再详聊)

1

2

3

4

5

if(expression){

     sentence1;

  } else {

     sentence2;

  }

expression为真,即expression不为undefinedNaN0null的时候执行sentence1,否则执行sentence2

既然这样的功能和if相同,为什么还要使用它?首先,在逻辑多次判断的时候,三目运算符逻辑更简洁:

1

2

3

4

expression1 ? sentence1 :

  expression2 ? sentence2 :

  expression3 ? sentence3 :

  ...

只要任意一个expressionN的判断为真,那么sentenceN立即执行,这个判断结束,后面的任何判断不再执行。而如果我们写成if-else

1

2

3

4

5

6

7

if(expression1){

      sentence1;

   } else if(expression2){

      sentence2;

   } else if(expression3){

      sentence3;

   } ...

这样书写逻辑看起来比较心累,所以在jquery和zepto源码中,我们会大量看到三目运算符的应用。

阅读剩余部分

相关阅读 >>

javascript中怎么换行

webgl怎样操作json与echarts图表

canvas的手绘风格图形库rough.js

总结 18 个 javascript 入门技巧!

javascript中dom常用方法有哪些?

javascript数组去重有哪几种方式

10 个有用的javascript math对象方法(推荐)

了解javascript有必要使用服务端渲染吗

js如何获取session中的值

html怎样格式化输出json数据

更多相关阅读请进入《javascript》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...