關於 Number.isFinite()
前言
最近發現在做除法時發現 JavaScript 的行為跟我想得不太一樣,在此把學習的過程做個紀錄。
內容
由於我是先學 C++ ,所以理所當然地認為"除零"是絕對不可以做的事,不然程式直接中斷,但最近發現 JavaScript 在"除零"遽然不會發生任何中斷,也不會報任何的錯誤,來看以下範例
console.log( 1 / 0 );//Infinity console.log( Infinity );//Infinity console.log( 0 / 0 );//NaN console.log( Number.isFinite(1 / 0) );//false
範例開頭做出一個"除零"的動作,結果會顯示"Infinity",查了一下發現"Infinity"是 JavaScript 預設的參數,最意外的行為是第 3 個 ,零除零並不會得到 "Infinity" ,而是"NaN",最後如果要判斷是否超出值域可以使用 Number.isFinite() 。
沒有留言:
張貼留言