javascript的x != x和isNaN(x)

javascript的x != x和isNaN(x)是否有相同的效果?

阅读 3.6k
1 个回答

不是。和 isNaN 等价的是 !==

isNaN 就是这么定义的,如果一个数不等于它自己,那么这个数就是 NaN


更新

15.1.2.4 isNaN (number)

如果指定参数为 NaN,则返回 true,否则返回 false。

  1. 如果 ToNumber(number) 是 NaN, 返回 true.

  2. 否则 , 返回 false.

注:一个用 ECMAScript 代码来测试值 X 是否是 NaN 的方式是用 X !== X 表达式。当且仅当 X 是 NaN 时结果才是 true。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题