三元运算符多个问号多个冒号

三目运算符的规律

关于三目运算符我们常见常用的形式是:

var c = true?1 : 2
console.log(c); //1
var c = false?1: 2
console.log(c)  //2

这个当判断条件为真返回1,判断条件为假返回2。

另一种形式:

1   var b = true ? true ? 1 : 2 : 3
2   console.log(b)  // 1
3   var b = true ? false ? 1 : 2 : 3
4   console.log(b)  // 2
5   var b = false ? false ? 1 : 2 : 3
6   console.log(b)   // 3
7   var b = false ? true ? 1 : 2 : 3
8   console.log(b)   // 3

这个为判断条件返回三个值的。

多个问号的形式:

 1   var a = false ? true ? false ? 1 : 2 : 3 : 4
 2   console.log(a)  // 4
 3   var a = false ? true ? true ? 1 : 2 : 3 : 4
 4     console.log(a)  //  4
 5   var a = false ? false ? false ? 1 : 2 : 3 : 4
 6   console.log(a)  // 4
 7   var a = false ? false ? true ? 1 : 2 : 3 : 4
 8   console.log(a)  // 4
 9   var a = true ? true ? true ? 1 : 2 : 3 : 4
10   console.log(a)  // 1
11   var a = true ? true ? false ? 1 : 2 : 3 : 4
12   console.log(a)  //2 
13   var a = true ? false ? false ? 1 : 2 : 3 : 4
14   console.log(a)  // 3
15   var a = true ? false ? true ? 1 : 2 : 3 : 4
16   console.log(a)  // 3

规律

1.如果第一个判断条件是false,那么不管剩下的是啥返回的都是最后一个值

2.如果第一个判断条件为true,那么再看第二个判断条件,如果第二个判断条件是false,那么无论后面的判断条件是啥都返回倒数第二个值

3.如果第一个第二个判断条件都是true,那么继续看第三个判断条件是false,那么一样不需要看后面的了直接返回倒数第三个值

4.如果判断条件全是true,直接返回第一个值。

总结:从前往后顺序看判断条件,当第一个false出现在n位,则这个三元运算符就返回倒数第n个值,全是true则返回第一个值。

posted @ 2022-09-27 09:07  白日梦想家er  阅读(326)  评论(0编辑  收藏  举报