回答
如果它是一個數字,並且不等於它自己,它是NaN。
注意:正如@pst指出的那樣,數字約束是不必要的。 NaN
似乎是JS!=本身中唯一的值。
@pst你可能是對的,讓我考慮一下。 –
@pst對象不等於相同的對象,(至少和'=='操作符一樣多)。 –
這可能是有用的:http://jsfiddle.net/SdMSS/ – Shmiddty
對這個問題的完整解決方案:
var is_NaN = function(n) {
return (n !== n);
}
is_NaN(1/'a'); // true
isNaN(1/'a'); // true
因爲在JavaScript NaN
不等於本身。一種表達NaN === NaN
總是返回false
第二種方案:
您可以使用內置的isFinite
功能。 isFinite
檢查輸入是否是的數字既不是Infinity
也不是NaN
。
isFinite(NaN) // false
isFinite(Infinity) // false
isFinite(1) // true
isFinite(true) // true, because argument true is equal to 1
isFinite('a') // false
isFinite(1/'a') // false
儘管這段代碼可能解決這個問題,[包括解釋](http://meta.stackexchange.com/questions/114762/explaining-entirely-code-based-answers)確實有助於提高您的質量帖子。請記住,您將來會爲讀者回答問題,而這些人可能不知道您的代碼建議的原因。 - [來自評論](https://stackoverflow.com/review/low-quality-posts/12012003) – Ferrybig
ECMA 6
Number.isNaN(42) === false
Number.isNaN(NaN) === true
- 1. 是否可以在不使用debugfs的情況下使用ftrace?
- 2. 是否可以在不使用Rails的情況下使用FactoryGirl?
- 3. 是否可以在不使用Xcode的情況下使用XCTest單元測試?
- 4. 是否可以在不拖放的情況下使用Linq-SQL?
- 5. 是否可以在不渲染HTML的情況下使用React?
- 6. JavaScript - 是否可以在不使用OR的情況下在一種情況下檢查多個工作日?
- 7. 您是否可以在不打開它的情況下檢測到安全.pdf?
- 8. 是否可以在不檢測VCS的情況下更改文件行?
- 9. 是否可以在不使用Activity類的情況下檢索聯繫人?
- 10. 是否可以在不禁用JavaScript的情況下禁用AJAX?
- 11. 是否可以在沒有Karma的情況下測試Angular?
- 12. 我可以在不使用switch語句的情況下測試枚舉值是否爲特定情況嗎?
- 13. 是否可以在沒有IIS的情況下使用Silverlight RiaServices?
- 14. 是否可以在沒有log4j的情況下使用perf4j?
- 15. 是否可以在沒有Expressj的情況下使用Passport.js?
- 16. 是否可以在沒有QtConcurrent的情況下使用QFuture?
- 17. 是否可以在沒有RTP/SAVP的情況下使用SIPML5
- 18. 是否可以在沒有MFC的情況下使用CListCtrl
- 19. 是否可以在沒有jQuery的情況下使用Materializecss?
- 20. 是否可以在沒有FOSUserBundle的情況下使用FOSCommentBundle?
- 21. 是否可以在沒有GMS的情況下使用Google API?
- 22. 是否可以在沒有VT-x的情況下使用Boot2Docker?
- 23. 是否可以在沒有RPC的情況下使用Apache Thrift?
- 24. 檢查是否isNan在條件下
- 25. 是否可以在不使用RefreshToken的情況下使用Google Adwords API?
- 26. 是否可以在不使用回調的情況下使用Google地圖?
- 27. 是否可以在不使用eclipse的情況下使用Android SDK?
- 28. 是否可以在不使用UWP的情況下使用.NET Native?
- 29. 是否可以在不使用freeglut的情況下使用滾輪按鈕?
- 30. SQL - 在這種情況下是否可以使用COUNT()?
是。 'NaN'在平等使用時有什麼特性? < - :-) – 2013-01-02 19:08:41
考慮此一提示從一個很好的訪問者@pst'一個= NaN' '的typeof A' =>' 「數量」'' A' !! = >'FALSE' ' b = 0' 'typeof b' =>'「number」' '!! b' =>'false' – Mohsen
真的夠了......但是在那裏沒有使用等號運算符(例如'==')。我所考慮的平等表達通常會被視爲一種重言式*。 – 2013-01-02 19:12:46