let a = 3;
let b = new Number(3)
let c = 3;
console.log(a == b);
console.log(a === b);
console.log(b === c);
A:true false true
B: false false true
C: true false false
D: false true true
参考答案:C
解析:
new Number ()是一个内置的函数构造函数。虽然它看起来像一个数字,但它并不是一个真正的数 字:它有一堆额外的功能,是一个对象。
当我们使用 == 运算符时,它只检查它是否具有相同的值。他们都有3的值,所以返回true
译者注:==会引发隐式类型转换,右侧的对象类型会自动转换为Number类型
然而,当我们使用 === 操作符是,类型和值都需要相等,Number()不是一个数字,是对象类型。两者都返回false