迹忆客 专注技术分享

当前位置:主页 > 学无止境 > WEB前端 > JavaScript >

JavaScript === vs ==

作者:迹忆客 最近更新:2024/03/19 浏览次数:

比较运算符帮助我们确定两个变量是否相等或遵循指定的标准。如果比较结果良好,则返回 true;否则,它返回 false。本教程解释了比较运算符中最令人困惑的话题,并教授何时使用哪个等于运算符(=====)。

单等号 = 与双等号 == 和三等号 === 完全不同,因为它是一个赋值操作,它们是比较运算符。因此,混淆通常在 ===== 之间。


JavaScript 中的松散相等运算符 (==)

== 运算符或相等运算符也称为抽象比较运算符。之所以称为抽象,是因为它只关心变量的值而不关心变量的类型。== 运算符在将变量值相互比较之前将它们转换为相同的类型(类型强制),如果转换的操作数相等,则返回 true。由于运算符必须执行类型转换,因此它往往比 === 运算符慢一点。

现在,要了解何时使用哪个运算符,我们首先必须了解一些有关类型强制的知识。它有两种类型:

  1. 显式强制转换: 使用内置方法通过代码显式完成。例如:要将字符串 "42" 转换为数字,我们必须编写 Number("42")。这样,我们使用显式的 Number() 类型转换方法将字符串转换为数字。
  2. 隐式强制转换: 它是由语言隐式完成的。它通常在我们将两种不同类型的操作数与运算符一起使用时执行。例如:如果我们执行 1 + ""。有一个数字和一个字符串不能直接相加,所以 JavaScript 类型将数字转换为字符串,因为这是它们相加的唯一方式,并返回一个字符串 "1"
23 == '23'         // returns true
true + false == 1  // returns true
undefined ==
    null         // returns true
        [] == 0  // returns true

JavaScript 中的严格相等运算符 (===)

=== 运算符或恒等运算符也称为严格比较运算符。之所以称为严格,是因为它只有在两个操作数的类型和值都相同时才返回真。它不执行任何类型的转换;因此,它往往比 == 运算符更快。

true === true  // returns true
true === 1     // returns false

因此,选择 ===== 运算符的决定取决于类型强制。如果不熟悉类型强制,那么他应该坚持使用严格相等运算符。

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

JavaScript 中的双感叹号运算符示例

发布时间:2024/03/19 浏览次数:194 分类:JavaScript

JavaScript 双感叹号!!(不是不)提供与布尔表达式相同的结果(真,假)。JavaScript 中的双感叹号运算符是一元逻辑运算符 !(not) 的单次重复。

在 JavaScript 中隐藏表格行

发布时间:2024/03/18 浏览次数:184 分类:JavaScript

JavaScript 不一定有任何可以直接隐藏表格内容的预定义函数。更准确地说,有 jQuery 的 toggle() 函数和 hide()、show() 函数,它们依次执行以按下行并展开它们。

JavaScript 查找表

发布时间:2024/03/18 浏览次数:112 分类:JavaScript

在今天的帖子中,我们将学习使用 JavaScript 中的一种简单方式创建查找表。

JavaScript 表格滚动

发布时间:2024/03/18 浏览次数:139 分类:JavaScript

要在网页中滚动表格内容,我们可以依赖一些 JavaScript 属性来依次执行任务。overflow、overflowX 和 overflowY 的使用使表格可滚动且可访问。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便