js中独立的与运算(&&)表达式

Posted 左直拳

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js中独立的与运算(&&)表达式相关的知识,希望对你有一定的参考价值。

题目可能描述不够规范,就是这么个意思吧。话说我阅读同事的代码,发现有这种表达式:

A && B;

我就觉得十分惊异,不懂是什么意思。按照习惯用法,”&&“应该用在逻辑表达式里,比如

if( a && b ) 
	。。。

查了资料,原来意思是这样的:

A && B;

如果A为true,则运行B,否则转向下一行。所以这里”B“不是一个变量,而是一个完整的表达式,比如赋值语句,或者其他执行语句,比如console.log()。它其实相当于

if(A)
 B;

所以我同事的写法比较简洁。有时可以用于精简switch语句等:

var n = 3;
switch(n)
    case1:
        console.log(1);
        break;
    case2:
        console.log(2);
        break;
    case3:
        console.log(3);
        break;
    default:
        console.log("null");

===>

var n = 3;
(n == 1) && console.log(1);
(n == 2) && console.log(2);
(n == 3) && console.log(3);
( ! n ) && console.log("null");

但好像没有多大必要。精简和可读性有时需要权衡。

参考文章:
JS &&(与运算)详解

以上是关于js中独立的与运算(&&)表达式的主要内容,如果未能解决你的问题,请参考以下文章

JS基础_非布尔值的与或运算

关于panda中dataframe的与&运算*(stackoverflow高票答案)

js && || 运算符

JS 中的布尔运算符 && 和 ||

js 与或运算符 || &&

js中的 || 与 && 运算符 的使用