首页 > 解决方案 > 如何查找函数的参数除以2是否为NaN?

问题描述

我需要编写一个接受参数的函数。如果参数除以 2 为 NaN,则返回“FLYING NOCTURNAL MAMMAL MAN!” 否则返回参数除以 2 的结果。我觉得我正在尝试的非常接近。任何帮助将不胜感激!谢谢。

这是我正在尝试的:

nananan = (num) => {
  if(num/2 == isNaN(num) || isNaN(num)) {
    return "FLYING NOCTURNAL MAMMAL MAN!";
  } else {
    return num;
  }
}

标签: javascript

解决方案


所以下面的代码应该可以工作

nananan = (num) => {
  if(isNaN(num)) {
    return "FLYING NOCTURNAL MAMMAL MAN!";
  } else {
    return num/2;
  }
}

console.log(nananan()); //now its NAN
console.log(nananan('adf')); //now its NAN
console.log(nananan(1)); //now its not a NAN
console.log(nananan(-1)); //now its not a NAN

所以这里的逻辑是num/2只有当 num 本身是 NAN 时才会是 NAN。那么为什么检查应该做isNaN(num/2)isNaN(num)


推荐阅读