set("mean",total/weight);
if (mean = "NaN") {
alert("Error! Please use NUMBERS only");
}
我希望警报仅在结果为NaN时运行,计算在没有if语句的情况下运行,所以我知道这不是问题。
答案 0 :(得分:3)
使用isNaN功能进行比较:
if(isNaN(mean)){
alert("Error! Please use NUMBERS only");
}
答案 1 :(得分:1)
在JavaScript中,mean = "NaN"
,单等于 设置mean
的值。然后,if语句将检查将评估为true的值“NaN”的“真实性”。也就是说,您的if(mean = "NaN")
会首先将mean
设置为文字字符串"NaN"
,然后测试if("NaN")
。
使用 double equals (mean == "NaN"
)进行相等比较,使用 triple equals (mean === "NaN"
)进行类型和相等比较。
但是,mean == "NaN"
将始终返回false
,因为NaN
is not the literal string "NaN"
but a special value。请改用isNaN(mean)
。
答案 2 :(得分:0)
更改
if (mean = "NaN") {
到
if (mean == "NaN") {
在第一个你设置一个值到一个var,在第二个你做一个逻辑比较
答案 3 :(得分:0)
您正在将"NaN"
字符串分配给mean
,而不是比较。
此外,您无法使用mean === NaN
进行检查,因为与NaN
相比总是返回false。
要检查是否为NaN
,您必须使用 isNaN 功能。
if (isNaN(mean)) {
alert("Error! Please use NUMBERS only");
}