JavaScript中的數字

來源:互聯網
上載者:User

一    數字

數字是javascript中的基礎資料類型之一,javascript並不區分整型數值和浮點型數值.Javascript採用IEEE 754 標準定義的64位浮格式,基本上類似於Java中的double類型.

javascript支援的數值直接量:整型直接量,八進位和十六進位直接量,浮點型直接量.

 

二    Number對象

Number 對象,該對象是原始數值的封裝對象。在必要時,JavaScript 會自動地在未經處理資料和對象之間轉換。

建構函式 Number() 可以不與運算子 new 一起使用,而直接作為轉化函數來使用。以這種方式調用 Number() 時,它會把自己的參數轉化成一個數字,然後返迴轉換後的原始數值(或 NaN)。建構函式通常還用作 5 個有用的數字常量的預留位置,這 5 個有用的數字常量分別是可表示的最大數、可表示的最小數、正無窮大、負無窮大和特殊的 NaN 值。類似於c#中的靜態成員屬性,不能被執行個體化.

 

Number.MAX_VALUE

可表示的最大數字

Number.MIN_VALUE

可表示的最小數字

Number.NAN

特殊的非數字值

Number.POSITIVE_INFINITY

表示正無窮大的特殊值

Number.NEGATIVE_INFINITY

表示負無窮大的特殊值

           另外還有兩個特殊值常量Infinity和NaN,分別表示無窮大和非數字.

    NaN != NaN           

    Infinity == Infinity   

     Number.POSITIVE_INFINITY:Infinity 

 

     Number.NEGATIVE_INFINITY: -Infinity 

 

 

 

兩個專門的函數用於判斷特殊值.

isNaN()

檢測特殊值NaN. NaN !== NaN,但是isNaN(NaN) == true;

isFinite()

檢測一個數字是否NaN,正無窮大或者負無窮大

 

 

 

 

isNaN()的一個問題:它會隱式的將它的參數轉換成數字,所以即便參數是個不能轉換成數位字串,它也會返回true(轉換成了NaN),這樣就沒用通過類型檢測直接進行了判斷,如下版本可以解決該問題:

Number.isNaN = function (value) {
    return typeof value === 'number' && isNaN(value);
};

三    數位運算

使用算數運算子(+,-,*,/等)進行運算.或者使用Math對象的函數來進行計算.

 

 

參考資料如下(如有侵權請您及時聯絡我):

javascript權威指南(第五版)

http://www.w3school.com.cn/js/pro_js_referencetypes.asp

http://www.cnblogs.com/ziyunfei/archive/2012/09/19/2690866.html

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.