JS基础_逻辑运算符
- <!DOCTYPE html>
- <html>
- <head>
- <meta charset="UTF-8">
- <title></title>
- <script type="text/javascript">
- /*
- * JS中为我们提供了三种逻辑运算符
- * ! 非
- * - !可以用来对一个值进行非运算
- * - 所谓非运算就是指对一个布尔值进行取反操作,
- * true变false,false变true
- * - 如果对一个值进行两次取反,它不会变化
- * - 如果对非布尔值进行运算,则会将其转换为布尔值,然后再取反
- * 所以我们可以利用该特点,来将一个其他的数据类型转换为布尔值
- * 可以为一个任意数据类型取两次反,来将其转换为布尔值,原理和Boolean()函数一样
- *
- * && 与
- * - &&可以对符号两侧的值进行与运算并返回结果
- * - 运算规则
- * - 两个值中只要有一个值为false就返回false,
- * 只有两个值都为true时,才会返回true
- * - JS中的“与”属于短路的与,
- * 如果第一个值为false,则不会看第二个值
- *
- * || 或
- * - ||可以对符号两侧的值进行或运算并返回结果
- * - 运算规则:
- * - 两个值中只要有一个true,就返回true
- * 如果两个值都为false,才返回false
- * - JS中的“或”属于短路的或
- * 如果第一个值为true,则不会检查第二个值
- */
- var a = false;
- //对a进行非运算
- a = !a;
- console.log(a);//true
- //如果对非布尔值进行运算,则会将其转换为布尔值,然后再取反
- var b = 10;
- b = !!b;
- console.log(b); //true
- console.log(typeof b); //boolean
- //------------------------------------------------------------------------
- //如果两个值都是true则返回true
- var result = true && true;
- console.log(result); //true
- //只要有一个false,就返回false
- result = true && false;
- result = false && true;
- result = false && false;
- console.log(result); //false
- //第一个值为true,会检查第二个值
- true && alert("看我出不出来!!");//可以弹窗
- //第一个值为false,不会检查第二个值
- false && alert("看我出不出来!!");//没有出现弹窗
- //--------------------------------------------------------------------
- //两个都是false,则返回false
- result = false || false;
- console.log("result = "+result);//false
- //只有有一个true,就返回true
- result = true || false;
- result = false || true ;
- result = true || true ;
- console.log("result = "+result);//true
- //第一个值为false,则会检查第二个值
- false || alert("123"); //可以弹窗
- //第一个值为true,则不再检查第二个值
- true || alert("123"); //没有出现弹窗
- </script>
- </head>
- <body>
- </body>
- </html>
JS基础_逻辑运算符的更多相关文章
- JS基础_标识符
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- JS基础_全局作用域
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- JS基础_函数的简介
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- JS基础_数组的遍历
遍历:将数组中所有的元素都取出来 1.for循环 var arr = ["1","2","3"]; for(let i=0;i<arr ...
- JS基础_垃圾回收(GC)
垃圾回收(GC) 程序运行过程中也会产生垃圾,这些垃圾积攒过多以后,会导致程序运行的速度过慢,所以我门需要一个垃圾回收的机制,来处理程序运行过程中产生的垃圾 当一个对象没有任何的变量或属性对它进行引用 ...
- JS基础_基本数据类型和引用数据类型
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- JS基础_属性名和属性值
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- JS基础_对象的简介、对象的基本操作
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- JS基础_流程控制语句
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
随机推荐
- Nginx在Linux安装详解及问题处理
Linux编译安装 1.nginx 依赖于prce库,要先安装pcre. #yum install prce pcre-devel 2.下载解压nginx #cd /usr/local/src/ #w ...
- vue-判断设备是手机端还是pc端
经常在项目中会有支持 pc 与手机端需求.并且pc与手机端是两个不一样的页面.这时就要求判断设置,根据不同的设置跳转不同的路由. [代码演示] 在 router/index.js 中有两个页面. ex ...
- git send-email时报错:Client host rejected: cannot find your hostname 如何处理?
1. 先找出ip对应的域名 dig +short -x <your ip> 2. 如果第1步没有输出,那么需要将hostname与ip绑定,如:hostname为jello,那么是往/et ...
- linux 下项目的发布
[wangq10@VM000001865 logs]$ [wangq10@VM000001865 ~]$ ls[wangq10@VM000001865 logs]$ apache-tomcat-7.0 ...
- CentOS linux7 磁盘分区
常用命令 df [选项] [文件] -a 显示全部文件系统 -h 方便阅读方式显示 -l 只显示本地文件系统 -T 显示文件系统类型 fdisk /dev/sda1
- java.lang.reflect.Method.getAnnotation()方法示例
转: java.lang.reflect.Method.getAnnotation()方法示例 作者: 初生不惑 Java技术QQ群:227270512 / Linux QQ群:479429477 ...
- Linux系统调优相关工具
一.系统调优概述 系统的运行状况: CPU -> MEM -> DISK*-> NETWORK -> 应用程序调优 分析是否有瓶颈(依据当前应用需求) 调优(把错误的调正确) ...
- [.NET] 一步步打造一个简单的 MVC 电商网站 - BooksStore(一) (转)
http://www.cnblogs.com/liqingwen/p/6640861.html 一步步打造一个简单的 MVC 电商网站 - BooksStore(一) 本系列的 GitHub地址:ht ...
- React Native面试题记录
一.ES6中增加了那些新的功能? 1> for-of循环: 使用 for-of 的时候,循环的是数组内部的元素且不会出现 for-in 中将附加属性也遍历的情况,其次,循环变量的类型和其在数组中 ...
- mysql innodb阻塞分析
http://blog.csdn.net/hw_libo/article/details/39080809