我有以下内容:

var a = 0;

if (Number(a) != '')
{
    alert('hi');
}


即使a不为空,也永远不会收到警报,它为0,我需要此值进行数值计算。enter code here

这里发生了什么?

最佳答案

!=运算符会根据需要进行类型转换,因此''会转换为数字值0

您可以使用!==运算符来避免类型转换:

var a = 0;

if (Number(a) !== '')
{
    alert('hi');
}

关于javascript - 比较Java中的x =''和x = 0,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34919656/

10-09 03:19