js中 = = 和 === 的区别

= = 和 === 都是用来判断相等的,区别是:相等的程度的深浅。

1.= = 判断相等的程度较浅,只判断数值而不判断数据类型,换言之 ,用= = 作比较的时候可以自动为我们转换数据的类型;

2.=== 判断相等的程度比 = =深,即判断数值,也判断数据类型,不可以自动转换数据的类型。

1、= =(判定值相等)

let a = 1; //数字类型
let b =1; //字符类型
console.log(a==b);

结果:true

2、=== (全等,判定值和类型都相等)

let a = 1; //数字类型
let b =1;//字符类型
console.log(a===b);

结果:false

注:
= = 会自动转换数据的类型 ,所以有的时候会产生一些问题,例如:

let a = 1;
let b = true;
console.log(a==b);//结果是true
let a = 0;
let b = false;
console.log(a==b);//结果是true
let a = null;
let b = undefined;
console.log(a==b);//结果是true

小结:=== 更加严谨,建议使用 ===

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐