javascript 红皮高程(19)-- 逻辑与

每天只学一点点啊,多学我也不乐意哈,,

今天来看看“逻辑与”,它是由二个(&&)符号组成的,有二个操作数,一左一右的,就这样:

var aa = bb && cc;
console.log(aa)

这个与(&&)操作符,可以用于任何类型的操作数,不仅仅是布尔值。

它的规则系这样地:

第一个操作数是对象,则返回第二个对象;

第二个是对象,则只有第一个为true时,才返回该对象;

如果二个都是对象,则返回第二个操作数;

如果有一个是null,则返回null;

如果有一个是NaN,则返回NaN;

如果有一个是undefined,就返回undefined;

==========

看了上面这几个规则,就应该明白,这个(&&)与操作,实质上属于短路操作,就是只要第一个操作数是false,结果就是false,而不管第二个操作数是啥。。

所以,一般这么用它:

function objs( objVal ){
 objVal && objVal();
}

意思就是说,这个objVal是否存在?如果存在就执行,否则就不执行。

原文发布于微信公众号 - web前端教室(webfeel)

原文发表时间:2016-04-05

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Pythonista

python内置函数大全

最近一直在看python的document,打算在基础方面重点看一下python的keyword、Build-in Function、Build-in Cons...

2151
来自专栏个人随笔

反射反射 程序员的快乐

java反射操作其实就是主要围绕Class,Field,Methon,Constructor等几个类来操作其中的方法

4304
来自专栏Crossin的编程教室

可变对象与不可变对象

前阵子我们聊了下函数的参数传递以及变量赋值的一些内容:关于函数参数传递,80%人都错了。

1242
来自专栏blackheart的专栏

[C#1] 2-类型基础

1.System.Object CLR要求每个类型都要继承自System.Object[直接或者间接方式],如果不显示继承,编译器会自动为我们添加对System...

1977
来自专栏黑泽君的专栏

Java中如何通过一个类名来调用另一个类的静态方法?

所以,比如另一个类叫OtherClass,它的静态公有方法是 public static int MethodA() {...}

1K4
来自专栏黑泽君的专栏

c语言基础学习06_函数

============================================================================= 涉及...

3462
来自专栏java初学

final关键字

39012
来自专栏java学习

面试题12(如何正确使用this)

哪些语句能放在如下代码中所示位置,而不会导致编译错误? public class ThisUse{ int plane; static int ...

2713
来自专栏全沾开发(huā)

数组的遍历你都会用了,那Promise版本的呢

2794
来自专栏DannyHoo的专栏

为什么NSString要用Copy来修饰?

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u010105969/article/details/...

1812

扫码关注云+社区

领取腾讯云代金券