操作符系列(1)
来源:互联网 发布:柯维时间矩阵图 编辑:程序博客网 时间:2024/06/06 11:40
布尔操作符
1、逻辑非
这个符号应用于所有值,无论这个值是什么数据类型,这个操作符都会返回一个布尔值。逻辑非会先将需要他操作的数值转换为一个布尔值,然后再求反。
- 如果这个操作数是一个对象,返回false
- 如果这个操作数是一个空字符串,返回true,非空为false
- 如果操作数值为0,则返回true
- 如果操作数是任意非0数值(包括Infinity),返回false
- 如果是null,则返回true;
- 如果是NaN,则返回true;
- 如果是undefine则返回true;
如果同时使用两次逻辑非运算符,实际上就辉模拟Boolean()转型函数的行为,最终结果相同.
2、逻辑与
两个&&号组成
两个都为真才真,一个为假就是假.
- 如果第一个操作数是对象,则返回第二个操作数
- 如果第二个操作数是对象,则只有第一个操作数求值结果为true的情况下才会返回该对象
- 如果两个操作数都是对象,则返回第二个
- 如果有一个是null,则返回null
- 如果有一个是NaN,则返回NaN
- 如果有一个是undefined,则返回undefined。
如果第一个操作数为假,则后面的不执行
3、逻辑或
两个||组成
两边的数值有一个为真就是真
- 如果第一个操作数是对象,则返回第一个操作数。
- 如果第一个操作数的求值结果是false,则返回第二个操作数;
- 如果两个操作数都是对象,则返回第一个操作数,
- 如果两个都是Null,则返回null
- 如果两个都是NaN,则返回NaN
- 如果两个都是undefined,则返回undefined
同上都是短路运算,要是第一个操作数为真,后面的操作数就不执行
逻辑或语句可以用于避免给变量赋上null或者undefined值
比如var myObj=a || b;
中
a包含优先赋给myObj的值,而b负责在a没有有效值的时候提供后备值
阅读全文
0 0
- 操作符系列(1)
- RxJava系列:操作符
- RxJava操作符系列一
- RxJava操作符系列二
- RxJava操作符系列三
- RxJava操作符系列四
- RxJava操作符系列五
- RxJava操作符系列六
- Swift学习笔记系列——(1)操作符
- RxJava系列之二 变换类操作符详解1
- C# 基础知识系列之 操作符重载
- Linq系列之标准查询操作符
- aauto学习系列之<5>:操作符
- RxJava系列3(转换操作符)
- RxJava系列4(过滤操作符)
- RxJava系列5(组合操作符)
- RxJava系列3(转换操作符)
- RxJava入门系列二,操作符篇
- union 与struct的空间计算
- 开机启动bat以及隐藏运行窗口
- 解决UITableViewCell中的元素无法触发点击事件
- 关于caffe LMDB入门 推荐比较好的几个博客
- SylixOS子系统原理--热插拔子系统
- 操作符系列(1)
- c++primer5 3.20答案
- C++11 新特性之Lambda表达式
- URI,URL与URN的区别
- ConstraintLatout怎么用
- sap
- IE浏览器中的ajax缓存问题与new Date()兼容性问题的解决方法
- angularjs 页面权限控制
- 手写服务器httpserver_封装分发器和多请求处理