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

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐