1:var box='3'>'22';
alert(box);   //true   如果两个是数值字符串 那么比较的是第一个数值 即 3和2的比较
2:var box=3>'22'  //false  如果只有一个字符串数值 那么会将那个字符串数值转换成数值 再比较
3:var box=(2=='2')    //true  这样比较的是转换后的数值比较
4:var box = {}=={}    //false   比较的是对象的地址  分别创建的两个对象是不同地址
5:var box ={}   var bb=box;   bb==box  //true 这个时候引用地址一样
6:null == 0  //false  null自动转换为0 但是比较运算时 null undefined不会自动转换 所以不想等
!!null==0   //true  加了两个感叹号又可以转换了
‘’==0   //true  字符串在比较的时候可以自动转换数值
7:关于 && 比较的注意要点
如果两边的操作数有一个操作数不是布尔值的情况下,与运算就不一定返回布尔值,此时遵循以下规则:
a:第一个操作数是对象 则返回第二个操作数
b:第二个操作数是对象 则第一个操作数返回true 才返回第二个操作数  否则返回false
c:有一个操作数是null则返回null
d:有一个操作数是undefined 则返回undefined

注意:如果第一个操作数是false 那么不管第二个操作数是什么都返回false 

 

posted on 2018-01-25 21:07  YKing_匆  阅读(121)  评论(0)    收藏  举报