在 TypeScript(或 JavaScript)中,我们可以使用相等运算符('=='
)或严格相等运算符(<代码>'===')。 比较运算符看起来几乎相似;但是,他们比较两个给定变量的方式非常不同。
如果适用,相等运算符仅比较应用类型强制后的值。严格相等运算符比较两个操作数的值和类型。
比较 x == y
与等于运算符,其中 x 和 y 是操作数,可以产生布尔结果,即 true
或 false
。
要知道的重要一点是,在比较这两个值时,JavaScript 运行时将执行 type coercion 使两个值成为同一类型。
例如,如果我们尝试将 string
值与 number
值进行比较,则 string
值将首先转换为 number
类型,然后进行比较。
"10" == 10 //becomes parseInt("10") == 10
阅读更多:完整的平等比较算法
让我们再举一个例子来理解比较。
let a = 10; a == 10 //true a == '10' //true
查看上面示例中的最后两个语句。变量 'a'
如何等于 number 10
和 string '10'
两者。
与等号运算符的严格比较 x === y
,其中 x 和 y 是值,仅在以下情况下产生 true
或 false
让我们通过一个例子来理解。
let a = 10; a === 10 //true a === '10' //false
在上一个示例中,比较存储number 10
的变量不等于string 10
。
作为一项建议,建议始终使用严格的等于运算符。这很有帮助,因为 –
false
。快乐学习!!
地址:https://www.cundage.com/article/equals-vs-strict-equals.html