比较运算符:<、>、<=、>=
注意:
遇到数字,优先按照数字大小比较;
两边都是字符串,按位比较,按照字符ASCII 编码a-97 A-65
小于(<)、大于(>)、小于等于(<=)、大于等于(>=);
任何操作数与 NaN 进行关系比较,结果都是 false。
相等运算符:==、===
==:比较两个表达式的值是否相等;
引用数据比较时,引用数据先转为字符串,或者使用valueOf()方法
!=:值不相等
| 特殊的一些表达式 | 值 |
|---|---|
| null==undefined | true |
| null==0 | false |
| NaN==任何数(包括NaN) | false |
| NaN !=任何数 | true |
| undefined==0 | false |
注意: 如果两个表达式都是引用数据时,那么会看是否是同一个内存空间?
===:比较两个表达式的值是否相等,类型也是否相等。
!==:不全等(值和类型)
注意:null===undefined的结果为false
in运算符:
instanceof运算符:
检测左侧的对象是否是右侧类的实例,如果是则返回true
如果一个对象是一个"父类"的子类的实例,则返回true
注意:所有的对象都是Object的子类