如果我有一个变量 x = ""
我检查以下条件 如果 x != 0
它在所有浏览器中都被评估为 false 吗?
为什么 0 与“”处理相同?
最佳答案
当您使用 ==
运算符时,JavaScript 会尝试将两个操作数转换为相同类型以进行比较。当您有一个字符串和一个数字时,它会尝试将字符串转换为数字。 ""
转换为 0
,给出此结果。
由于这种行为,许多人选择使用 ===
和 !==
运算符。它们的操作数必须是相同类型才能被视为相等。
关于Javascript 0 与空白,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7186090/