相关疑难解决方法(0)

为什么"true"== true在JavaScript中显示为false?

MDC描述了==运营商如下:

如果两个操作数的类型不同,则JavaScript转换操作数,然后应用严格比较.如果操作数是数字或布尔值,操作数将尽可能转换为数字; 否则,如果任一操作数是字符串,则另一个操作数将转换为字符串(如果可能).

考虑到这一点,我会评估"true" == true如下:

  1. 它们属于同一类型吗?没有
  2. 操作数是数字还是布尔值?
  3. 我们可以将两者都转换为数字吗?没有(isNaN(Number("true")) // true)
  4. 两个操作数都是字符串吗?
  5. 我们可以将其他操作数转换为字符串吗?是的(String(true) === "true" // true)

我已经结束了与弦"true""true",这应该求true,但JavaScript的显示错误.

我错过了什么?

javascript string equals

84
推荐指数
2
解决办法
2万
查看次数

JavaScript类型转换

考虑空的JavaScript数组:

var a = [];
alert(a == false); // shows true
alert(!a); // shows false!
Run Code Online (Sandbox Code Playgroud)

怎么解释这个?规则是什么?

javascript types casting

5
推荐指数
3
解决办法
1万
查看次数

标签 统计

javascript ×2

casting ×1

equals ×1

string ×1

types ×1