isNaN没有使用JavaScript

时间:2015-08-21 13:30:37

标签: javascript if-statement integer nan parseint

我遇到的问题是isNaN函数是JavaScript。我有一个变量trc,我知道这不是一个数字,但我希望我的代码能够分辨。不幸的是,isNaN没有检测到它不是一个数字,但当我使用警报来显示变量的值时,它确实不是一个数字。

trc = parseInt(getCookie("trc"));
cnn = parseInt(getCookie("cnn"));
klove = parseInt(getCookie("klove"));
if (isNaN(trc)) {
  trc = 0;
}
if (getCookie("trc") == undefined) {
  trc = 0;
} else {
  trc = parseInt(getCookie("trc"));
}
alert(trc);

BTW,我有一个单独的函数getCookie(),我自己去获取cookie的值。

1 个答案:

答案 0 :(得分:0)

您之前应该检查trc的值。 如果trcnull,则isNaN(null)将返回false。

编辑: parseInt方法不返回空值,但trc可以被外部代码修改 - 因此我建议使用名称空间,例如:

var namespace = namespace || {};
namespace.trc = .....