javascript隐式数据类型转换
隐式数据类型转换
- 举个栗子
let a = 3;
console.log(a+true);//结果为:4
- 上面的两行代码是一个很简单的js代码,a是一个数值型的变量,我们把a赋值为3,true是一个boolean类型的值,按照其他语言,“a+true”是一条错误的代码,但是在js里,我们输出了结果为4。我们并没有对true进行类型转换,但是js语言把它转换为数字类型。这种行为就叫做隐式数据类型转换。
- 再举一个栗子
function test() {
let obj1 = new String('123');
let obj2 = '123';
console.log(obj1 == obj2);//结果为:true
}
test();
- 这样的结果同样是因为“==”运算会进行隐式数据类型转换,所以进行隐式数据类型转换的等值运算结果为true。
- 再举一个栗子