= 赋值运算符
== 等于
=== 严格等于
首先,== equality 等同,=== identity 恒等。
==, 两边值类型不同的时候,要先进行类型转换,再比较。
===,不做类型转换,类型不同的一定不等。
下面分别说明:
先说 ===,这个比较简单。下面的规则用来判断两个值是否===相等:
1、如果类型不同,就[不相等]
2、如果两个都是数值,并且是同一个值,那么[相等];(!例外)的是,如果其中至少一个是NaN,那么[不相等]。(判断一个值是否是NaN,只能用isNaN()来判断)
3、如果两个都是字符串,每个位置的字符都一样,那么[相等];否则[不相等]。
4、如果两个值都是true,或者都是false,那么[相等]。
5、如果两个值都引用同一个对象或函数,那么[相等];否则[不相等]。
6、如果两个值都是null,或者都是undefined,那么[相等]。
再说 ==,根据以下规则:
1、如果两个值类型相同,进行 === 比较。
2、如果两个值类型不同,他们可能相等。根据下面规则进行类型转换再比较:
a、如果一个是null、一个是undefined,那么[相等]。
b、如果一个是字符串,一个是数值,把字符串转换成数值再进行比较。
c、如果任一值是 true,把它转换成 1 再比较;如果任一值是 false,把它转换成 0 再比较。
d、如果一个是对象,另一个是数值或字符串,把对象转换成基础类型的值再比较。对象转换成基础类型,利用它的toString或者valueOf方法。js核心内置类,会尝试valueOf先于toString;例外的是Date,Date利用的是toString转换。非js核心的对象,令说(比较麻烦,我也不大懂)
e、任何其他组合,都[不相等]。
举例:
"1" == true
类型不等,true会先转换成数值 1,现在变成 "1" == 1,再把"1"转换成 1,比较 1 == 1, 相等。
例:
var a = 3;
var b = "3";
a==b 返回 true
a===b 返回 false
因为a,b的类型不一样
===用来进行严格的比较判断
引文来源 js中2个等号与3个等号的区别 - - JavaEye技术网站
分享到:
相关推荐
在JavaScript(JS)中,`==` 和 `===` 是两种常见的比较运算符,它们用于判断两个值是否相等。然而,这两个运算符在处理特殊数据类型时有着显著的差异,这经常会让开发者感到困惑。下面我们将深入探讨这两个运算符的...
### JavaScript中的`<script type="text/javascript">`标签详解 #### 标签含义与作用 在Web开发中,`<script>`标签是HTML文档中用于嵌入或引用JavaScript代码的关键元素之一。它允许开发者直接在HTML文档内部编写...
这两个运算符在JavaScript中被称为“松散相等”和“松散不等”。当使用`==`进行比较时,如果两边的值类型不同,JavaScript会尝试进行类型转换,然后比较它们的值。例如,`'1' == 1`会返回`true`,因为在比较前,字符...
<script type="text/javascript" src="image/ie_png.js"> <script type="text/javascript"> ie_png.fix('.png, .menu ul li a span'); // 第二个参数为含有png的标签id(css) ie_png.fix('.png, .logo span');...
在这个项目中,我们将深入探讨如何利用Microsoft Translator API在JavaScript中实现实时的中英文切换功能。 首先,你需要注册一个Azure账户并创建一个新的服务主体,以便获取Microsoft Azure Cognitive Services的...
该文件为JS文件,为客户端程序,在.net中调用格式为: <script language="javascript" type="text/javascript" src="calendar.js"> ………… <input id="Text1" type="text" runat="server" onclick=...
根据给定的文件标题、描述、标签以及部分内容,本文将详细介绍JavaScript中常见的验证与判断方法。这些技术在前端开发中非常实用,可以帮助开发者确保用户输入符合预期格式。 ### 1. 字符串长度限制 #### 1.1 JS...
EXT中要用到的js包css包和images包 在jsp页面中导入<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <link rel="stylesheet" href="css/ext-all.css" type="text/css" /> <script language=...
在JavaScript中,`=`、`==` 和 `===` 是三种不同的比较运算符,它们用于判断两个值是否相等。理解这些运算符的区别对于编写精确的JavaScript代码至关重要。 首先,`=` 是赋值运算符,它将右侧的值赋给左侧的变量,...
### JS中==与===操作符的比较 在JavaScript(简称JS)编程中,经常会遇到需要比较两个变量或值是否相等的情况。为了处理这些比较需求,JavaScript提供了两种基本的等值比较操作符:`==`(松散等于)和`===`(严格...
JavaScript 中的数组是一种基本数据类型,用于存储一组相关的数据。数组可以存储各种类型的数据,包括数字、字符串、对象等。数组的使用非常广泛,以下是对 JavaScript 数组的详细说明。 一、创建数组 JavaScript ...
JS代码也可以在外部文件中,例如: `<script src="jsfile.js" type="text/javascript"></script>`。 JS数据类型 JS中有六种基本数据类型:String、Number、Boolean、Null、Undefined、Object。JS也支持函数和数组...
在Domino XPages开发中,引用JavaScript(JS)和 Cascading Style Sheets(CSS)是构建交互式和美观用户界面的关键步骤。以下是如何在XPages环境中有效地引用这些资源的详细说明。 1) 直接在代码中引用: 这种方法...
在JavaScript中,中文字符是Unicode编码,可以通过`charCodeAt()`方法获取每个字符的Unicode值。但是,直接使用这个方法无法得到对应的拼音,因为它返回的是数字而非汉字的拼音表示。 为了将中文字符转换为拼音,...
本文将深入探讨JavaScript中的==运算符,通过详细的说明和示例图解,帮助你更好地理解和掌握这一运算符。 ==运算符是JavaScript中的比较运算符之一,它用于比较两个值是否相等。在JavaScript中,==运算符被称为抽象...
html中<script type="module">的脚本调用<script type="text/javascript">中的脚本。 元素的onClick事件调用<script type="module">的脚本。
在JavaScript中,可以通过`encodeURI`或`encodeURIComponent`进行编码,而使用`decodeURI`或`decodeURIComponent`进行解码。 - **编码**: ```javascript var encodedChinese = encodeURIComponent('中文'); ...
JavaScript,简称JS,是一种轻量级的解释型编程语言,广泛应用于网页和互联网应用开发。作为客户端脚本语言,它可以直接在用户的浏览器上运行,无需服务器支持,为网页添加交互性和动态功能。以下是对JavaScript的...