Why isn't NaN finite?

后端 未结 5 608
萌比男神i
萌比男神i 2021-01-13 17:34

Testing the isFinite function I see that NaN is an infinite number (even if it\'s not a number :-)).

相关标签:
5条回答
  • 2021-01-13 17:41

    Because it is not a numeric value...and finite/infinite is applicable only to numbers.

    0 讨论(0)
  • 2021-01-13 17:42

    Finite means capable of being counted. It has to return true or false for isFinite. I think it makes more sense for NaN to be infinite.

    0 讨论(0)
  • 2021-01-13 17:48

    As Dave Newton said, NaN is not a number, and then you have to consider that it isn't finite nor infinite. The same occurs to these:

    NaN > 0  // false
    NaN < 0  // false
    

    You might want to read these articles:

    • https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/NaN
    • https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/isFinite
    0 讨论(0)
  • 2021-01-13 18:01

    The result of any arithmetic operation on NaN is NaN.

    The result of any logic operation on NaN is false.

    0 讨论(0)
  • 2021-01-13 18:08

    Because an infinite number... is still a number. NaN isn't a number in any possible sense.

    It's like an error in Matrix.

    0 讨论(0)
提交回复
热议问题