松软科技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 ...
随机推荐
- 【HUAWEI Mate30】抽奖啦!华为IoT新福利上线!
华为云OceanConnect IoT云服务包括应用管理.设备管理.系统管理等能力,实现统一安全的网络接入.各种终端的灵活适配.海量数据的采集分析,从而实现新价值的创造. 华为云OceanConnec ...
- Python基础之第三方库gevent安装
安装gevent库: 想要安装gevent库,我们需要确定pip版本: 使用 pip3 list: 我们可以发现pip版本为19.3.1,如果你们的pip版本不是最新版可以使用命令python -m ...
- Android 通知的基本用法
一.概念 通知(Notification)是 Android 系统中比较有特色的一个功能,当某个应用程序希望像用户发送一些提示消息的时候,然而此时应用程序并不在前台运行,此时就可以借助通知来实现.发出 ...
- luogu P2345 奶牛集会 |排序+树状数组
题目描述 约翰的N 头奶牛每年都会参加"哞哞大会".哞哞大会是奶牛界的盛事.集会上的活动很多,比如堆干草,跨栅栏,摸牛仔的屁股等等.它们参加活动时会聚在一起,第i 头奶牛的坐标为X ...
- 过滤器和监听器实现用户的在线登录人数,以及设置session时长。
过滤器: package com.bjsxt.filter; import java.io.IOException; import javax.servlet.Filter; import javax ...
- 字典dict的深入学习(item() / items() 一致的)
字典Dict的跟进学习: 一. items()方法的遍历:items()方法把字典中每对key和value组成一个元组,并把这些元组放在列表中返回. dict = {"name" ...
- 第5节:Java基础 - 必知必会(下)
第5节:Java基础 - 必知必会(下) 本小节是Java基础篇章的第三小节,主要讲述Java中的Exception与Error,JIT编译器以及值传递与引用传递的知识点. 一.Java中的Excep ...
- 2017 ACM/ICPC 沈阳 L题 Tree
Consider a un-rooted tree T which is not the biological significance of tree or plant, but a tree as ...
- 基于FPGA的LCD+CMOS视频采集显示使用小结
基于FPGA的LCD+CMOS视频采集显示 液晶显示器采用扫描模式,RGB888 电源采用:+5V供电 usb供电有时候会出现供电不足的问题 显示器接口有两种选择:16bit或24bit 分别对应 ...
- Sql Server存储过程详解
存储过程--查询: if (exists (select * from sys.objects where name = 'GetUser')) drop proc GetUser --判断存储过程是 ...