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

Google 自訂搜尋

Goole 廣告

隨機相片
IMG_4457.jpg

授權條款

使用者登入
使用者名稱:

密碼:


忘了密碼?

現在就註冊!

網頁設計 : [分享]利用javascript達到數字千分位效果

發表者 討論內容
冷日
(冷日)
Webmaster
  • 註冊日: 2008/2/19
  • 來自:
  • 發表數: 15771
[分享]利用javascript達到數字千分位效果
利用javascript達到數字千分位效果
<script language="JavaScript">
<!--
n="1279834847944074100465236.33"
// re=/(\d{1,3})(?=(\d{3})+(?:$|\.))/g
re=/(\d{1,3})(?=(\d{3})+(?:$|\D))/g
n1=n.replace(re,"$1,")
alert(n+"\r\n"+n1)
//-->
</script>


有人發現上述Function有瑕疵,就是沒注意到小數點!
換言之,上述Function如果碰上小數點的話(嚴格來說,應該說小數點下四位以上時才會發生),會有很怪異的輸出。
所以提供進階版:
<script>
function FormatNumber(n) {
    n += "";
    var arr = n.split(".");
    var re = /(\d{1,3})(?=(\d{3})+$)/g;
    return arr[0].replace(re,"$1,") + (arr.length == 2 ? "."+arr[1] : "");
}

//test
document.write(FormatNumber(1234567) + "<br>");
document.write(FormatNumber("12345678.12") + "<br>");
document.write(FormatNumber(123456789.1234) + "<br>");
document.write(FormatNumber(-123456.123) + "<br>");
</script>



原文出處:數字用千分位符號顯示- 藍色小舖 BlueShop
前一個主題 | 下一個主題 | 頁首 | | |



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