javascript三目运算符有哪些


当前第2页 返回上一页

赋值

另一个经典的应用场景在于赋值,var param = expression ? value1 : value2,这个相信大家经常用到

1

2

3

4

5

6

var b,

     c = 1;

  var a = b ? 2 : 1;

  a    // 1

  var a = c > 0 ? 2 : 1

  a   // 2

再谈判断

有一天写了这样的代码

1

2

3

4

5

function xx(){

     var a = 1,

     b = 3;

     a < b ? return false : ''

 }

居然报错了! 为什么报错,我们会仔细看一下上面的多个判断

1

2

3

4

expression1 ? sentence1 :

   expression2 ? sentence2 :

   expression3 ? sentence3 :

   ...

只要有一个expressionN成立,就马上跳出。原因是什么呢? 我们可以猜想是因为三目运算符return了sentenceN,所以判断立即跳出。赋值的用法也一样,之所以报错的原因是

1

2

3

if(expression){

     return (return 2);

  }

这样的写法肯定报错了。那么如果我们对上面的解释有疑问,我们可以用这样的代码来证明:

1

2

3

4

var a = 1,

      b = 2;

  var c = b > 1 ? a++ : 0;

  c   // 1

c为什么是1,因为n++是在执行完表达式后再加1,如果return a++,先return 再加1,所以这里的c等于1

更多编程相关知识,请访问:编程视频!!

以上就是javascript三目运算符有哪些的详细内容,更多文章请关注木庄网络博客

返回前面的内容

相关阅读 >>

js中call、apply、bind的区别

javascript怎么删除信息

详解javascript中switch语句的用法

javascript与java区别是什么

javascript字符串怎么进行编码转换

如何在js中改变dom元素的文本内容

javascript的不同函数中可以使用相同的变量名吗?

利用gulp实现压缩的实例

javascript如何设置图片时间

javascript如何表示空指针

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




打赏

取消

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

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

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

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

评论

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