JavaScript原生物件之Number物件的屬性與方法詳解_javascript技巧
建立 Number 物件的語法:
var myNum = new Number(value);
var myNum = Number(value);
當 Number() 和運算子 new 一起作為建構函式使用時,它會傳回一個新建立的 Number 物件。如果不用 new 運算符,把 Number() 當作一個函數來調用,它將把自己的參數轉換成一個原始的數值,並且傳回這個值(如果轉換失敗,則傳回 NaN)。
MAX_VALUE
MAX_VALUE 屬性是 JavaScript 中可表示的最大的數。它的近似值為 1.7976931348623157 x 10308。最大的負數是 -MAX_VALUE。
比MAX_VALUE還要大的數字是Infinity。 MAX_VALUE是一個靜態屬性,所以呼叫方法應該是Number.MAX_VALUE。
console.log(Number.MAX_VALUE) //1.7976931348623157e 308
MIN_VALUE
MIN_VALUE 屬性是 JavaScript 中可表示的最小的數(接近 0 ,但不是負數)。它的近似值是 5 x 10-324 。
所有比MIN_VALUE小的數都會轉換成0。
MIN_VALUE是一個靜態屬性,所以呼叫方法應該是 Number.MIN_VALUE。
NaN
NaN 屬性是代表非數字值的特殊值。此屬性用於指示某個值不是數字。可以把 Number 物件設定為該值,來指示其不是數字值。
可以使用 isNaN() 全域函數來判斷一個值是否是 NaN 值。
Number.NaN 是一個特殊值,說明某些算術運算(如求負數的平方根)的結果不是數字。方法 parseInt() 和 parseFloat() 在不能解析指定的字串時就回傳這個值。對於一些常規情況下傳回有效數字的函數,也可以採用這種方法,用 Number.NaN 說明它的錯誤情況。
JavaScript 以 NaN 的形式輸出 Number.NaN。請注意,NaN 與其他數值進行比較的結果總是不相等的,包括它本身。因此,不能與 Number.NaN 比較來偵測一個值是不是數字,而只能呼叫 isNaN() 來比較。
注意:全域變數NaN 和Number.NaN 是一樣的,NaN是一個不可配置,不可修改的屬性。
console.log(parseInt("abc")); //NaN
console.log(NaN === NaN); //false
console.log(Number.NaN === NaN); //false
console.log(isNaN(NaN)); //true
console.log(isNaN(Number.NaN)); //true
NEGATIVE_INFINITY
NEGATIVE_INFINITY 屬性表示小於 -Number.MAX_VALUE 的值。該值代表負無窮大。
JavaScript 顯示 NEGATIVE_INFINITY 時使用的是 -Infinity。這個數值的算術行為和無窮大非常相似。例如,任何數乘無窮大結果仍為無窮大,任何數被無窮大除的結果為 0。
-Infinity 和 Number.NEGATIVE_INFINITY 相等。
var x = (-Number.MAX_VALUE) * 2;
var y = Number.NEGATIVE_INFINITY;
console.log(x); //-Infinity
console.log(y); //-Infinity
console.log(x===y); //true
POSITIVE_INFINITY
POSITIVE_INFINITY 屬性表示大於 Number.MAX_VALUE 的值。該值代表正無窮大。
JavaScript 顯示 POSITIVE_INFINITY 時使用的是 Infinity。這個數值的算術行為和無窮大非常相似。例如,任何數乘無窮大結果仍為無窮大,任何數被無窮大除的結果為 0。
Infinity 和 Number.POSITIVE_INFINITY相等。
isFinite() 方法可以判斷參數是否為有限的數字。
var x = Number.NEGATIVE_INFINITY;
var y = Number.POSITIVE_INFINITY;
var z = Infinity;
var a = "abc";
var b = 123;
console.log(isFinite(x)); //false
console.log(isFinite(y)); //false
console.log(isFinite(z)); //false
console.log(isFinite(a)); //false
console.log(isFinite(b)); //true
toString()
toString() 方法可把一個 Number 物件轉換為字串,並傳回結果。
NumberObject.toString(radix)
參數radix是可選的。規定表示數字的基數,使 2 ~ 36 之間的整數。若省略該參數,則使用基數 10,建議始終帶著此參數,防止誤解。例如,當 radix 為 2 時,NumberObject 會被轉換為二進位值表示的字串。
當呼叫該方法的物件不是 Number 時拋出 TypeError 異常。
var a = 100;
console.log(a.toString()); //100
console.log(a.toString(10)); //100
console.log(a.toString(2)); //1100100
console.log(a.toString(8)); //144
console.log(a.toString(16)); //64
toLocaleString()
toLocaleString() 方法可把一個 Number 物件轉換為本地格式的字串。
數字的字串表示,由實作決定,根據本機規範進行格式化,可能會影響小數點或千分位分隔符號所採用的標點符號。
當呼叫該方法的物件不是 Number 時拋出 TypeError 異常。
var a = 123456;
console.log(a.toLocaleString()); //123,456
console.log(a.toLocaleString("zh-Hans-CN-u-nu-hanidec")); //一二三,四五六
更多參數可以參考:MDN
toFixed()
toFixed() 方法可把 Number 四捨五入為指定小數位數的數字。
NumberObject.toFixed(num)
參數num是必需的。規定小數的位數,是 0 ~ 20 之間的值,包括 0 和 20,有些實作可以支援更大的數值範圍。如果省略了該參數,將會以 0 取代。
傳回 NumberObject 的字串表示,不採用指數計數法,小數點後有固定的 num 位數字。如果必要,該數字會被捨入,也可以用 0 補足,以便它達到指定的長度。如果 num 大於 le 21,則此方法只呼叫 NumberObject.toString(),傳回以指數計數法表示的字串。
當 num 太小或太大時拋出異常 RangeError。 0 ~ 20 之間的值不會引發該異常。有些實作支援更大範圍或更小範圍內的值。當呼叫該方法的物件不是 Number 時拋出 TypeError 異常。
var n = 12345.6789;
console.log(n.toFixed()); //12346
console.log(n.toFixed(2)); //12345.68
console.log(n.toFixed(6)); //12345.678900
console.log((1.23e 20).toFixed(2)); //123000000000000000000.00
console.log((1.23e-10).toFixed(2)); //0.00
注意:由於對浮點數的處理,toFixed() 方法展現出的結果並不是所謂的“四捨五入”或者是“四捨六入五成雙”,而是四捨,六入,五的表現十分混亂。
//Chrome中
console.log(( 0.035 ).toFixed( 2 )); //0.04
console.log(( 0.045 ).toFixed( 2 )); //0.04
建議自己寫方法來取代toFixed()預設行為,可以參考:SO上的討論:
Number.prototype.toFixed = function(len){
var temp = Math.pow(10,len);
var s = Math.ceil(this * temp)
return s/temp;
}
console.log(( 0.035 ).toFixed( 2 )); //0.04
console.log(( 0.045 ).toFixed( 2 )); //0.05
toExponential()
toExponential() 方法可把物件的值轉換成指數計數法。
NumberObject.toExponential(num)
參數num是可選的。規定指數計數法中的小數位數,是 0 ~ 20 之間的值,包括 0 和 20,有些實現可以支援更大的數值範圍。如果省略了該參數,將使用盡可能多的數字。
傳回 NumberObject 的字串表示,採用指數計數法,即小數點之前有一位數字,小數點之後有 num 位數字。該數字的小數部分將被舍入,必要時以 0 補足,以便它達到指定的長度。
當 num 太小或太大時拋出異常 RangeError。 0 ~ 20 之間的值不會引發該異常。有些實作支援更大範圍或更小範圍內的值。當呼叫該方法的物件不是 Number 時拋出 TypeError 異常。
var num = 10000.1234;
console.log(num.toExponential()); //1.00001234e 4
console.log(num.toExponential(2)); //1.00e 4
console.log(num.toExponential(10)); //1.0000123400e 4
toPrecision()
toPrecision() 方法可將數值格式化為一個十進位數形式的字串。
NumberObject.toPrecision(num)
參數num是可選的。用於控制數字的精度。此參數是 1 ~ 21 之間(且包括 1 和 21)的值。如果省略了該參數,則呼叫方法 toString(),而不是把數字轉換成十進制的值。
var num = 10000.1234;
console.log(num.toPrecision()); //10000.1234
console.log(num.toPrecision(2)); //1.0e 4
console.log(num.toPrecision(10)); //10000.12340

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

微信是主流的聊天工具之一,我們可以透過微信認識新的朋友,聯絡老的朋友,維繫朋友之間的友誼。正如天下沒有不散的宴席,人與人之間的相處難免會發生意見不合的時候。當一個人極度影響你的情緒,或是在相處的時候發現三觀不合,沒辦法再繼續溝通,那麼我們可能需要刪除微信好友的方法。怎麼刪除微信好友?刪除微信好友的方法第一步:在微信主介面輕觸【通訊錄】;第二步:點選對應要刪除的好友,進入【詳細資料】;第三步:點選右上角【...】;第四步:點選下方【刪除】即可;第五步:了解後頁面提示後,點選【刪除聯絡人】即可;溫馨

番茄小說是一款非常熱門的小說閱讀軟體,我們在番茄小說中經常會有新的小說和漫畫可以去閱讀,每一本小說和漫畫都很有意思,很多小伙伴也想著要去寫小說來賺取賺取零用錢,在把自己想要寫的小說內容編輯成文字,那麼我們要怎麼樣在這裡面去寫小說呢?小伙伴們都不知道,那就讓我們一起到本站本站中花點時間來看寫小說的方法介紹。分享番茄小說寫小說方法教學 1、先在手機上打開番茄免費小說app,點擊個人中心——作家中心 2、跳到番茄作家助手頁面——點擊創建新書在小說的結

而後悔莫及、人們常常會因為一些原因不小心刪除某些聯絡人、微信作為一款廣泛使用的社群軟體。幫助用戶解決這個問題,本文將介紹如何透過簡單的方法找回被刪除的聯絡人。 1.了解微信聯絡人刪除機制這為我們找回被刪除的聯絡人提供了可能性、微信中的聯絡人刪除機制是將其從通訊錄中移除,但並未完全刪除。 2.使用微信內建「通訊錄恢復」功能微信提供了「通訊錄恢復」節省時間和精力,使用者可以透過此功能快速找回先前刪除的聯絡人,功能。 3.進入微信設定頁面點選右下角,開啟微信應用程式「我」再點選右上角設定圖示、進入設定頁面,,

七彩虹主機板在中國國內市場享有較高的知名度和市場佔有率,但是有些七彩虹主機板的用戶還不清楚怎麼進入bios進行設定呢?針對這一情況,小編專門為大家帶來了兩種進入七彩虹主機板bios的方法,快來試試吧!方法一:使用u盤啟動快捷鍵直接進入u盤裝系統七彩虹主機板一鍵啟動u盤的快捷鍵是ESC或F11,首先使用黑鯊裝機大師製作一個黑鯊U盤啟動盤,然後開啟電腦,當看到開機畫面的時候,連續按下鍵盤上的ESC或F11鍵以後將會進入到一個啟動項順序選擇的窗口,將遊標移到顯示“USB”的地方,然

手機遊戲成為了人們生活中不可或缺的一部分,隨著科技的發展。它以其可愛的龍蛋形象和有趣的孵化過程吸引了眾多玩家的關注,而其中一款備受矚目的遊戲就是手機版龍蛋。幫助玩家們在遊戲中更好地培養和成長自己的小龍,本文將向大家介紹手機版龍蛋的孵化方法。 1.選擇合適的龍蛋種類玩家需要仔細選擇自己喜歡並且適合自己的龍蛋種類,根據遊戲中提供的不同種類的龍蛋屬性和能力。 2.提升孵化機的等級玩家需要透過完成任務和收集道具來提升孵化機的等級,孵化機的等級決定了孵化速度和孵化成功率。 3.收集孵化所需的資源玩家需要在遊戲中

字體大小的設定成為了重要的個人化需求,隨著手機成為人們日常生活的重要工具。以滿足不同使用者的需求、本文將介紹如何透過簡單的操作,提升手機使用體驗,調整手機字體大小。為什麼需要調整手機字體大小-調整字體大小可以使文字更清晰易讀-適合不同年齡段用戶的閱讀需求-方便視力不佳的用戶使用手機系統自帶字體大小設置功能-如何進入系統設置界面-在在設定介面中找到並進入"顯示"選項-找到"字體大小"選項並進行調整第三方應用調整字體大小-下載並安裝支援字體大小調整的應用程式-開啟應用程式並進入相關設定介面-根據個人

Win11管理員權限取得方法匯總在Windows11作業系統中,管理員權限是非常重要的權限之一,可以讓使用者對系統進行各種操作。有時候,我們可能需要取得管理員權限來完成一些操作,例如安裝軟體、修改系統設定等。下面就為大家總結了一些取得Win11管理員權限的方法,希望能幫助大家。 1.使用快捷鍵在Windows11系統中,可以透過快捷鍵的方式快速開啟命令提

Oracle版本查詢方法詳解Oracle是目前世界上最受歡迎的關聯式資料庫管理系統之一,它提供了豐富的功能和強大的效能,廣泛應用於企業。在進行資料庫管理和開發過程中,了解Oracle資料庫的版本是非常重要的。本文將詳細介紹如何查詢Oracle資料庫的版本信息,並給出具體的程式碼範例。查詢資料庫版本的SQL語句在Oracle資料庫中,可以透過執行簡單的SQL語句
