var number = 2;
var string = '2';
if (number == string){
return true;
}
上面的代码将返回true。我想知道==运算符是如何工作的。它会将整数转换为字符串,然后进行比较或对位吗?
答案 0 :(得分:0)
==运算符确实会更改数据类型。
我们可以在JavaScript中使用parseInt
作为数字,toString
作为字符串
如果我们比较它总是返回false: -
var number = parseInt("2");
var string = '2';
var str=string.toString;
if (number == str){
return TRUE;
}else{
return FALSE;
}
答案 1 :(得分:0)
你必须在使用parseInt函数时定义基数并使用===来比较严格的相等性:
var number = parseInt('2', 10);
var string = '2';
return (number === string);
答案 2 :(得分:0)
我想知道==运算符是如何工作的。它会将整数转换为字符串,然后进行比较或相反吗?
不,它会将字符串转换为数字,然后进行比较。
如果需要,您可以阅读规范中的确切Abstract Equality Algorithm。