Google 脚本 parseInt 和 NaN - 它是如何工作的?

Paw*_*zyk 2 nan parseint google-apps-script

我将检查某个变量是字符串还是数字。如果值是字符串,我使用parseInt()返回NaN(非数字)的函数。但是,当我尝试在 if 语句中检查它时,它看起来"NaN"不能将输出视为要检查的有效条件。猜猜为什么?

function tsCalculate() {
  var string = "Monday";
  var number = 1;
  Logger.log(string);
  Logger.log(number);
  Logger.log("String after parseInt: " + parseInt(string, 10));
  Logger.log("Number after parseInt: " + parseInt(number, 10));
  if ("NaN" == parseInt(string, 10))
  {
    Logger.log("doesn't work");
  }
}
Run Code Online (Sandbox Code Playgroud)

Que*_*tin 7

NaN 是:

使用isNaN以确定是否值等于NaN

if (isNaN(parseInt(string, 10))) {

}
Run Code Online (Sandbox Code Playgroud)