js中短路运算符 || &&

见过好多插件都这么用,感觉高大上。。。

|| 与 &&

说到底也没啥,稍微懂点程序的,或者是搞过相关硬件编程的都会用到这玩意,就算是数学,中学你可能都用到过。

是不是不信?

&& 和 || 运算符使用短路逻辑(short-circuit logic),是否会执行第二个语句(操作数)取决于第一个操作数的结果。在需要访问某个对象的属性时,使用这个特性可以事先检测该对象是否为空:

var name = o && o.getName();
或运算可以用来设置默认值:

var name = otherName || “default”;
类似地,JavaScript 也有一个用于条件表达式的三元操作符:

var allowed = (age > 18) ? “yes” : “no”;

对于&&,在 (表达式1)&&(表达式2),只有在表达式1表达式2都成立时才为true,那么就有:表达式1为false时表达式,就不用看了肯定有:(表达式1)&&(表达式2)=false;



对于||,在 value= (表达式1)||(表达式2),只有在 表达式1表达式2都成立时才为true,那么就有:
表达式1为false时表达式,value=表达式2的布尔值,
表达式1为true时表达式,value=true,根本就不用看表达式2了


so—-短路大名 诞生

&&:

表达式1 表达式2 结果(value)
false * false
true false false
true true true

||:

表达式1 表达式2 结果(value)
true * true
false false false
false true true



用到js里就变成拿值(对象)了,常见如下:

var name = otherName || “default”;


在 JavaScript 中, true && expression 总是会评估为 expression ,而 false &&
expression 总是执行为 false 。

因此,如果条件为 true ,则 && 后面的元素将显示在输出中。 如果是 false,React 将会忽略并跳过它。 ——-见React官网

你可能感兴趣的:(javascript,react)