1.===运算符不会对左右两边的值进行类型转换,所以左右两边值是否相等比较明确,==运算符当两边值类型不等时(相等时会按照严格相等模式进行比较),会尝试进行类型转换,所以会造成两个类型不同的值经过转换后两值相等。
2.==运算符的比较规则:
字符和数字进行比较时,字符转成数字然后再进行比较;
如果一个值为true,则会把true转为数字1然后再继续比较;
如果一个值为false,则会把false转为数字0然后继续比较;
如果一个值为对象,另一个为数字或字符,则会尝试把对象转为原始值,再进行比较。
其他不同类型比较均不相等。
3.比较运算符:
只有数字和字符才有真正执行比较运算(数字有大小,字符有对应位置数值的比较),其它类型进行比较时,会先转成原始类型,然后再按照字符或数字比较大小的方式进行比较。
4.+运算符和比较运算符:
+运算符操作数有一个是字符,就会进行字符串连接操作;
比较运算符操作数有一个是数字,就会把另外一个操作数转成数字,再进行比较。
网友评论