茫茫網海中的冷日
         
茫茫網海中的冷日
發生過的事,不可能遺忘,只是想不起來而已!
 恭喜您是本站第 1664602 位訪客!  登入  | 註冊
主選單

Google 自訂搜尋

Goole 廣告

隨機相片
IMG_DPP_0008.jpg

授權條款

使用者登入
使用者名稱:

密碼:


忘了密碼?

現在就註冊!

網頁設計 : [轉貼]JavaScript的四捨五入、無條件捨去、無條件進位

發表者 討論內容
冷日
(冷日)
Webmaster
  • 註冊日: 2008/2/19
  • 來自:
  • 發表數: 15766
[轉貼]JavaScript的四捨五入、無條件捨去、無條件進位
Math.round() ,Math.floor(),Math.ceil()

Math.round() 四捨五入
Math.floor() 取小於這個數的最大整數
Math.ceil() 取大於這個數的最小整數

例一:
alert(Math.round(12.3));			//12
alert(Math.round(12.5));			//13
alert(Math.round(12.52145));	//13


它將一個小數四捨五入為一個整數,與Java中的Math.round() 一樣,不保留一位小數!

保留兩位小數:
alert(Math.round(12.52645 * 100) / 100);	//12.53

先將12.52645 乘 10 得到1252.645
將這個結果四捨五入為整數得到1253
再將1253除以100 ,得到12.53

如果要保留三位小數,乘1000再除1000就行!

例二:
一箱裝6瓶酒,現有N瓶,求裝幾箱。
function getNum(n) {
    var value = n;
    n = n / 6; //這裡拿到的結果有可能是小數,因為Js是弱類型語言。在Java中,整數除整數,結果也是整數。
    if (value % 6 != 0) { 如果不是6的倍數,也就是n箱裝不下。
        n += 1; //再裝一箱
    }

    n = Math.floor(n); //求小於這個數的最大整數,因為n / 6 可能是小數,所以這裡要化整。
    return n;
}

alert(getNum(12)); 2
alert(getNum(1)); 1
alert(getNum(0)); 0
alert(getNum(15)); 3


原文出處:Math.round() ,Math.floor(),Math.ceil() - Joejoe1991的备忘录
前一個主題 | 下一個主題 | 頁首 | | |



Powered by XOOPS 2.0 © 2001-2008 The XOOPS Project|