`
xshq
  • 浏览: 43151 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

等性运算符

 
阅读更多

等号和非等号

在 ECMAScript 中,等号由双等号(==)表示,当且仅当两个运算数相等时,它返回 true。非等号由感叹号加等号(!=)表示,当且仅当两个运算数不相等时,它返回 true。为确定两个运算数是否相等,这两个运算符都会进行类型转换。

执行类型转换的规则如下:

  • 如果一个运算数是 Boolean 值,在检查相等性之前,把它转换成数字值。false 转换成 0,true 为 1。
  • 如果一个运算数是字符串,另一个是数字,在检查相等性之前,要尝试把字符串转换成数字。
  • 如果一个运算数是对象,另一个是字符串,在检查相等性之前,要尝试把对象转换成字符串。
  • 如果一个运算数是对象,另一个是数字,在检查相等性之前,要尝试把对象转换成数字。

在比较时,该运算符还遵守下列规则:

  • 值 null 和 undefined 相等。
  • 在检查相等性时,不能把 null 和 undefined 转换成其他值。
  • 如果某个运算数是 NaN,等号将返回 false,非等号将返回 true。
  • 如果两个运算数都是对象,那么比较的是它们的引用值。如果两个运算数指向同一对象,那么等号返回 true,否则两个运算数不等。

重要提示:即使两个数都是 NaN,等号仍然返回 false,因为根据规则,NaN 不等于 NaN。

全等号和非全等号

等号和非等号的同类运算符是全等号和非全等号。这两个运算符所做的与等号和非等号相同,只是它们在检查相等性前,不执行类型转换。

全等号由三个等号表示(===),只有在无需类型转换运算数就相等的情况下,才返回 true。

分享到:
评论

相关推荐

    实验7 多态性和运算符重载.doc

    多态性和运算符重载

    javascript相等运算符与等同运算符

    javascript相等运算符与等同运算符

    C语言运算符优先级和结合性表

    C语言运算符优先级和结合性表,全面介绍了C语言运算符的优先级和结合性。

    运算符优先级与结合性

    C语言运算符及其优先级汇总表口诀  圆下箭头一顿号  非凡增减富强针地长  三乘除,四加减,五移位  千万别把鱼忘记,它在盛饭的厨子里  小灯大灯灯灯不等  爸喂鱼,舅疑惑,裸鸡也疑惑  十三姨,十四父,十五...

    C语言运算符的优先级与结合性

    C语言所有运算符的优先级与结合性,很实用的查询表

    运算符的优先级和结合性.doc

    运算符的优先级和结合性

    运算符重载的基本内容

    C++语言中预定义的运算符的操作对象只能是基本数据类型,但是,在实际应用中,对于很多用户自定义数据类型(如类)也需要类似的功能,这就需要对已有的运算符赋予多种含义,使同一个运算符具有作用于不同类性的数据...

    C++运算符与结合性

    这个文档详细介绍了C++各种运算符的优先级和结合性,可以让你更加清楚各种C++运算符的操作

    C语言中运算符的优先级与结合性

    对C语言中运算符的优先级与结合性进行了细致的排列比较。

    运算符优先级和结合性

    运算符的计算方向就是运算符 结合性。具有高优先级的运算符先于低优先级的运算符进行计算。如果复杂的表达式有多个运算符,则运算符优先级将确定执行操作的顺序。执行顺序可能对结果值 有明显的影响。某些运算符具有...

    C语言运算符优先级与结合性.pdf

    运算符的优先级每种语言里应该都是差不多的,当然了有的语言中有一些特殊的运算符,比如在 C 语言中有 & 和 * ...而对于算术运算、逻辑运算等,基本上都是有的,而这些运算符的优先级和结合性应该每种语言都是相同的。

    实验8 多态性和运算符重载.doc

    多态是指类族中具有相似功能的不同函数使用同一名称来实现,从而可以使用相同的调用方式来调用...运算符重载是指同样的运算符可以施加于不同类型的操作数上面,使同样的运算符作用于不同类型的数据导致不同类型的行为。

    C++运算符重载 详细介绍PPT

    详细介绍 C++运算符重载 的PPT 文中部分内容: ...重载下标运算符“[]”的一个优点是可以增加C++中数组检索的安全性 重载下标运算符“[]”时,返回一个int的引用,所以可使重载“[]”用在赋值语句的左边。

    C++运算符的优先级以及结合性

    所有运算符的信息都总结出来了,里面还有举例

    C++ 课程作业 多态性 运算符重载-综合(Point类)

    请定义一个Point类,将前置++和后置++运算符重载为成员函数,实现成员变量m_x和m_y的加一操作 同时重载流插入运算符,实现对Point类对象的格式化输出。例如 Point p; cout; 输出结果为: (0,0) 请根据给定的main...

    运算符和结合性

    运算符和结合性 C学习资料收集 C学习资料收集

    C语言的运算符的优先级和结合性

    C语言规定了运算符的优先级和结合性。在表达式求值时,先按运算符的优先级别高低次序执行,例如先乘除后加减。C语言还规定了各种运算符的结合方向,众所周知的是,算术运算符的结合方式为“自左向右”,即先左后右,...

    运算符与结合性表

    详细阐明了运算符与结合性表的关系. eg:(1)同一优先级的运算符优先级别相同,运算次序由结合方向决定。例如,*与/具有相同的优先级别,其结合方向为自左至右,因此,3*5/4的运算次序是先乘后除。一和++为同一...

    C语言运算符类别结合性及优先级

    C语言运算符类别结合性及优先级,文档介绍C语言中运算符的结合性以及优先级次序

Global site tag (gtag.js) - Google Analytics