javascript 三个等于号===和双等==的区别

javascript三等和双等的区别

这两个符号都是表示判断是否相等,只有一点区别,那就是===不会做任何的类型转换,而==会做必要的类型转换来判断是否相等。也就是说===是严格意义上的完全相等,例如2 === ‘2’值为false,而==则相对“宽松”,2 == ‘2’返回的是true。

代码示例

具体可以参考下列的代码:

'' == '0'           // false
0 == ''             // true
0 == '0'            // true

false == 'false'    // false
false == '0'        // true

false == undefined  // false
false == null       // false
null == undefined   // true

' \t\r\n ' == 0     // true

再来看列表和json对象的情形:

var a = [1,2,3];
var b = [1,2,3];

var c = { x: 1, y: 2 };
var d = { x: 1, y: 2 };

var e = "text";
var f = "te" + "xt";

a == b            // false
a === b           // false

c == d            // false
c === d           // false

e == f            // true
e === f           // true

By Code问答

发表评论

电子邮件地址不会被公开。 必填项已用*标注

29 − = 20