松软科技web课堂:JavaScript 布尔(逻辑)
JavaScript 布尔(逻辑)代表两个值之一:true 或 false。
布尔值
通常,在编程中,您会需要只能有两个值之一的数据类型,比如
- YES / NO
- ON / OFF
- TRUE / FALSE
鉴于此,JavaScript 提供一种布尔数据类型。它只接受值 true 或 false。
Boolean() 函数
您可以使用 Boolean() 函数来确定表达式(或变量)是否为真:
实例
Boolean(10 > 9) // 返回 true
或者甚至更简单:
实例
(10 > 9) // 也返回 true
10 > 9 // 也返回 true
比较和条件
JS 比较这一章列出了完整的比较运算符。
JS 条件这一章列出了完整的条件语句。
下面是一些例子:
运算符 | 描述 | 实例 |
---|---|---|
== | 等于 | if (day == "Monday") |
> | 大于 | if (salary > 9000) |
< | 小于 | if (age < 18) |
表达式的布尔值是 JavaScript 比较和条件的基础。
所有具有“真实”值的即为 True
实例
100 3.14 -15 "Hello" "false" 7 + 1 + 3.14 5 < 6
所有不具有“真实”值的即为 False
所有不具有“真实”值的即为 False
0(零)的布尔值为 false: var x = 0;
Boolean(x); // 返回 false
-0 (负零)的布尔值为 false:
var x = -0;
Boolean(x); // 返回 false
""(空值)的布尔值为 false:
var x = -0;
Boolean(x); // 返回 false
undefined 的布尔值是 false:
var x;
Boolean(x); // 返回 false
null 的布尔值是 false:
var x = null;
Boolean(x); // 返回 false
false 的布尔值(正如您猜到的)是 false:
var x = null;
Boolean(x); // 返回 false
NaN 的布尔值是 false:
var x = 10 / "H";
Boolean(x); // 返回 false
布尔可以是对象
通常 JavaScript 布尔是由字面量创建的原始值:
var x = false
但是布尔也可以通过关键词 new 作为对象来定义:
var y = new Boolean(false)
实例
var x = false;
var y = new Boolean(false); // typeof x 返回 boolean
// typeof y 返回 object
不要创建布尔对象。它会拖慢执行速度。
new 关键词会使代码复杂化,并产生某些意想不到的结果:
当使用 == 运算符时,相等的布尔是相等的:
实例
var x = false;
var y = new Boolean(false); // (x == y) 为 true,因为 x 和 y 拥有相等的值
当使用 === 运算符时,相等的布尔是不相等的,因为 === 运算符需要在类型和值两方面同时相等。
实例
var x = false;
var y = new Boolean(false); // (x === y) 为 false,因为 x 和 y 的类型不同
或者甚至更糟。对象无法进行比较:
实例
var x = new Boolean(false);
var y = new Boolean(false); // (x == y) 为 false,因为对象无法比较
比较两个 JavaScript 对象将始终返回 false。
文章来源:www.sysoft.net.cn,加v:15844800162深度交流
松软科技web课堂:JavaScript 布尔(逻辑)的更多相关文章
- 松软科技web课堂:JavaScript 数据类型
字符串值,数值,布尔值,数组,对象. JavaScript 数据类型 JavaScript 变量能够保存多种数据类型:数值.字符串值.数组.对象等等: var length = 7; // 数字 va ...
- 松软科技Web课堂:JavaScript 类型转换
Number() 转换数值,String() 转换字符串,Boolean() 转换布尔值. JavaScript 数据类型 JavaScript 中有五种可包含值的数据类型: 字符串(string) ...
- 松软科技Web课堂:JavaScript JSON
JSON 是存储和传输数据的格式. JSON 经常在数据从服务器发送到网页时使用. 什么是 JSON? JSON 指的是 JavaScript Object Notation JSON 是轻量级的数据 ...
- 松软科技Web课堂:JavaScript 异常
JavaScript 错误 - Throw 和 Try to Catch try 语句使您能够测试代码块中的错误. catch 语句允许您处理错误. throw 语句允许您创建自定义错误. final ...
- 松软科技web课堂:JavaScript 比较和逻辑运算符
JavaScript 比较和逻辑运算符 比较和逻辑运算符用于测试 true 或 false. 比较运算符 比较运算符在逻辑语句中使用,以判定变量或值是否相等. 我们给定 x = 5,下表中解释了比较运 ...
- 松软科技Web课堂:JavaScript this 关键词
实例 var person = { firstName: "Bill", lastName : "Gates", id : 678, fullName : fu ...
- 松软科技Web课堂:JavaScript 正则表达式
正则表达式是构成搜索模式的字符序列. 该搜索模式可用于文本搜索和文本替换操作. 什么是正则表达式? 正则表达式是构成搜索模式(search pattern)的字符序列. 当您搜索文本中的数据时,您可使 ...
- 松软科技Web课堂:JavaScript Break 和 Continue
break 语句“跳出”循环. continue 语句“跳过”循环中的一个迭代. Break 语句 在本教程稍早的章节中,您已见到了 break 语句.它被用于“跳出” switch 语句. brea ...
- 松软科技Web课堂:JavaScript For 循环
循环可多次执行代码块. JavaScript 循环 假如您需要运行代码多次,且每次使用不同的值,那么循环(loop)相当方便使用. 通常我们会遇到使用数组的例子: 不需要这样写: text += ca ...
随机推荐
- C#中的Stopwatch类简单使用
Stopwatch实例可以度量一个间隔的运行时间, 或度量多个间隔内所用时间的总和. 命名空间System.Diagnostics. 简单使用 using System; using System.D ...
- ubuntu 下 shell 搜索命令
一.在当前目录及其子目录查找以mesos开头,并以.jar结尾的文件,并打印出来 sudo find ./ -name mesos*.jar -print 二.whereis, locate 也有类似 ...
- hibernate绑定session
session session是一种单实例对象 简单说就是自己用 别人不能用.在一些项目中很多人一起来操作 所以我们可以把session与我们的本地线程一起绑定,本地线程的特点就是执行一次 从创建到销 ...
- CodeForces845G-Shortest PathProblem?
You are given an undirected graph with weighted edges. The length of some path between two vertices ...
- PyCharm设置Python版本,你肯定不知道!
前言本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理.作者:智小星 PyCharm默认会使用虚拟的Python解释器,即使 ...
- 阿里最新38道Java面试题解析(MyBatis+消息队列+Redis)
一.谈谈你对 MyBatis 的理解? 1. Mybatis是一个半ORM(对象关系映射)框架,它内部封装了 JDBC,开发时只需要关注 SQL 语句本身,不需要花费精力去处理加载驱动.创建连接.创建 ...
- python爬虫--图片懒加载
图片懒加载 是一种反爬机制,图片懒加载是一种网页优化技术.图片作为一种网络资源,在被请求时也与普通静态资源一样,将占用网络资源,而一次性将整个页面的所有图片加载完,将大大增加页面的首屏加载时间.为了解 ...
- cordova 打包出现transformClassesWithDexForDebug一类错误的解决办法
Cordova在添加了插件后,或者是本身文件很多,文件很大的情况下打包时候可能会出现 transformClassesWithDexForDebug或者transformClassesWithDexF ...
- CMAKE同时编译C++和CUDA文件
1. 首先是运行环境 Ubuntu 16.04 G++ 5.4.0 CUDA 8.0 2. 文件结构 cv@cv:~/myproject$ tree src src/ |-- CMakeLists.t ...
- 1、手写Unity容器--极致简陋版Unity容器
模拟Unity容器实例化AndroidPhone 思路: 1.注册类型:把类型完整名称作为key添加到数据字典中,类型添加到数据字典的value中 2.获取实例:根据完整类型名称也就是key取出val ...