2025年11月24日 星期一

關於 isFinite()

 關於 isFinite()

前言

  在先前的 關於 Infinity 提到 Infinity ,  JavaScript 提供 isFinite() 確認是否有限,但用起來有點跟想的不一樣,在此把學習的過程做個紀錄。


內容

  範例如下

console.log( Infinity === Number.POSITIVE_INFINITY );//true
console.log( -Infinity === Number.NEGATIVE_INFINITY );//true
//
console.log( !isFinite( Infinity ) );//true
console.log( !isFinite( Number.POSITIVE_INFINITY ) );//true
console.log( !isFinite( NaN ) );//true
//
console.log( !Number.isFinite( Infinity ) );//true
console.log( !Number.isFinite( NaN ) );//true


JavaScript 其實提供 Number.POSITIVE_INFINITY 與 Number.NEGATIVE_INFINITY 分別代表正無限與負無限,但感覺用起來不如 Infinity 與 -Infinity 來的簡潔。使用 isFinite() 來確認是否無限,也許就直接使用 !isFinite() 來直接完成,簡短又直覺,但這個方法不能檢查像是 NaN 的狀況!所以如果要檢查是否無限,透過直接比較 Infinity 與 -Infinity 即可。最後 isFinite() 不只一個地方有,Number.isFinite() 也有提供,效果是一樣的。


參考資料

[ developer.mozilla.org ] isFinite()


相關文章與資料

關於 Infinity


沒有留言:

張貼留言