欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

JavaScript中三元表达式的详细解释

程序员文章站 2023-11-06 08:27:58
三元表达式的基本格式:布尔表达式?语句1:语句2 简单解释:如果布尔表达式返回结果为真就执行语句1,如果布尔表达式返回结果为假就执行语句2。 但是在实际应用中并没有这么简单,还是有些需要注意的地方,...

三元表达式的基本格式:布尔表达式?语句1:语句2

简单解释:如果布尔表达式返回结果为真就执行语句1,如果布尔表达式返回结果为假就执行语句2。

但是在实际应用中并没有这么简单,还是有些需要注意的地方,

比如布尔表达式只能是布尔表达式吗?语句1和语句2中有多条语句需要执行又怎么办?等。

鉴于以上细节问题,我总结了几条便于使用三元表达式应该熟知的知识点:

1,布尔表达式的值或者返回值是计算值。

比如1==1返回true,null返回false,parseint(4)%2==0返回true。

2,布尔表达式可以是函数,但要注意,函数必须是调用状态或者是匿名函数的立即执行状态,且函数的返回值要满足知识点1。

比如:匿名函数的立即执行状态。

(function(){
    if(1===1){
        return true;
    }else{
        return false;
    }
}())console.log(true):console.log(false)

3,语句1和语句2可以有返回值,也可以没有返回值。如果有返回值,可以如下来保存返回值:

var grade=80;
var str =grade>=60'及格':'不及格';

这样str就保存了“及格”值。

4,语句1和2也可以是函数,但得特别注意函数是否是调用状态或者匿名函数立即执行状态。

如下这段代码会返回一段代码段,而不是弹窗显示1或2.

var grade=80;
var f = grade>=60fun:func;
function fun(){
alert(1);
}
function func(){
alert(2);
}

5,当语句1和2需要执行多条语句时,语句间可用逗号隔开,并用括号包裹语句。

如下:

true(alert(1),console.log(2)):alert(3)