js 关系运算符

1.大于  >   (小于 效果一样)

var box=3>2       //true
var box=3>22      //false
var box='3'>22    //false,如果有一个字符串,字符串转换成数值在比较
var box='3'>'22'  //true,如果两个都是字符串,则比较第一次字符
var box='a'>'b'   //false,a=97,b=98对照ascii码
var box='a'>'B'   //true,B=66
var box=1>对象     //false,如果有toString()或valueOf(),返回/>返回值

 2.等于  =

var box=2==2     //true
var box='2'==2   //true,'2'转换成2
var box=false==0 //true,false转换成数值为0
var box='a'=='A'; //false,转换后的编码不一样
var box=NaN==NaN  //false
var box=2=={}     //false,执行toString()和valueOf()会改变
var box=2==NaN    //false,只要有NaN都为false
var box={}=={}    //false,对象比较的是他们的地址,对象的引用地址都不一样


var age={}
var height=age
var box=age==height    //true,引用地址一样
var box='2'===2       //false,三个等号必须值和类型都相等
var box=2!==2       //false,值和类型都相等

3.特殊符号的比较

表达式
null==undefined true
'NaN'==NaN false
5==NaN false
false==0 true
true==1 true
true==2 false
undefined==0 false
null==0 false
'100'==100 true
'100'===100 false
NaN==NaN false

 

posted @ 2018-02-28 12:53  小欣子  阅读(260)  评论(0编辑  收藏  举报