相等运算符(==):
如果操作数具有相同的类型,则判断其等同性,如果两个操作数的值相等,则返回true(相等),否则返回false(不相等).
如果操作数的类型不同,则按照这样的情况来判断:
l null和undefined相等
l 其中一个是数字,另一个是字符串,则将字符串转换为数字,在做比较
l 其中一个是true,先转换成1(false则转换为0)在做比较
l 如果一个值是对象,另一个是数字/字符串,则将对象转换为原始值(通过toString()或者valueOf()方法)
l 其他情况,则直接返回false
等同运算符(===)
如果操作数的类型不同,则不进行值的判断,直接返回false
如果操作数的类型相同,分下列情况来判断:
l 都是数字的情况,如果值相同,则两者等同(有一个例外,就是NaN,NaN与其本身也不相等),否则不等同
l 都是字符串的情况,与其他程序设计语言一样,如果串的值不等,则不等同,否则等同
l 都是布尔值,且值均为true/false,则等同,否则不等同
l 如果两个操作数引用同一个对象(数组,函数),则两者完全等同,否则不等同
l 如果两个操作数均为null/undefined,则等同,否则不等同
备注:而!=不等和!==不等同,则与==/!==相反。因此,在JavaScript中,使用相等/等同,不等/不等同的时候,一定要注意类型的转换
分享到:
相关推荐
C++单目运算符重载 单目运算符只有一个操作数,如!a,-b,&c,*p,还有最常用的++i和–i等。重载单目运算符的方法与重载双目运算符的方法是类似的。但由于单目运算符只有一个操作数,因此运算符重载函数只有一个参数...
运算符优先算法 利用数据结构中的运算符优先算法实现整数的加、减、乘、除、括号的多项式运算,运算表达式以#结尾。测试表达式如下运算: "1+(1+2)*(5+25/5)#" 利用数据结构中的运算符优先算法实现整数的加、减、乘...
C++语言中预定义的运算符的操作对象只能是基本数据类型,但是,在实际应用中,对于很多用户自定义数据类型(如类)也需要类似的功能,这就需要对已有的运算符赋予多种含义,使同一个运算符具有作用于不同类性的数据...
1、 编写一个简单复数类Scomplex,要求用友元函数重载“+”、“-”运算符,用成员函数重载“=”运算符,使之能够实现整数或浮点数和复数的加法和减法,并且进行测试。 2、空间一点p的坐标为(x,y,z),其中x,y,z为...
详细介绍 C++运算符重载 的PPT 文中部分内容: 下标运算符“[ ]”重载 C++把下标运算符[ ]看成一个双目运算符,其操作数为<基本表达式>和<表达式>,对应的运算符为operator[ ],必须重载为一个成员函数。对于下标...
本章节我们将为大家详细介绍算术运算符、关系运算符、逻辑运算符、位运算符、赋值运算符及其他运算符。 算术运算符 以下表格列出了 Swift 语言支持的算术运算符,其中变量 A 为 10,变量 B 为 20: 运算符 描述 ...
dC语言运算符表C语言运算符表C语言运算符表C语言运算符表C语言运算符表C语言运算符表C语言运算符表
中缀式的计算按运算符的优先级及括号优先的原则,相同级别从左到右进行计算。表达式还有后缀式(如:22 7 4 - * 3 / 11 +)和前缀式(如:+ 11 / * 22 – 7 4 3)。后缀表达式和前缀表达式中没有括号,给计算带来...
三元运算符的使用,以及编码,都是在html语言中的运用,js的基础
vb语言中运算符的总结,VB考试。vb语言中运算符的总结,VB考试。vb语言中运算符的总结,VB考试。
C语言运算符详解(很基础的哦),一、算术运算符 + 加法运算符 应有两个量参与加法运算 a=b+c — 减法运算符(也可作负值运算符) a=b-c * 乘法运算符 / 除法运算符 注意:“/”参与运算量均为整型时,结果也为整型...
运算符图片运算符图片运算符图片运算符图片
标识符、关键字、常量、变量、运算符标识符标识符、关键字、常量、变量、运算符、关键字、常量、变量、运算符
Python数据类型运算符
运算符重载.py python运算符重载
定义一个二维方阵类 matrix。通过重载二元运算符“+”、“-”、“*”和一元运算符“~”, 来实现矩阵加、矩阵减、矩阵乘以及矩阵转置。
javascript相等运算符与等同运算符
本文章是关于C语言逻辑运算符和位运算符总结。
如运算符重载和函数重载 字符串连接,+=运算符重载 求子串: 左边几个字符,,, Left(int nCount) 右边几个,, Right(int nCount) 某个位置开始的几个字符 Mid(int nPos,int nCout) 2..进一步熟悉掌握对类的构造...
编译原理识别界符和运算符的自动机编译原理识别界符和运算符的自动机编译原理识别界符和运算符的自动机编译原理识别界符和运算符的自动机编译原理识别界符和运算符的自动机