js中var x = (a || b,c);怎么解释这个表达式?

2024-11-15 10:01:39
推荐回答(1个)
回答1:

a||b 短路运算符,a为false执行b,a为true,执行a
类似的还有 a & b ,a为true执行b,否则为a
三目运算符:a ? b : c; a为true 执行b  赋值执行c

var a = (3,4);会逐个赋值    先a=3,  然后再a=4覆盖
比如 function test(num){
        console.log('赋值为:'+num); 
        return num;
     }
     var a = (test(2), test(3));  可以看到赋值顺序
     
所有var a = (8 || 7, 6); 先赋值a= 8||7 为8,  再a=6覆盖