2011-08-07 56 views
3

這裏是我的程序:添加逗號到JavaScript計數進位定時器

<script> 
var montharray = new Array("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec") 

function countup(yr, m, d) { 
    var today = new Date() 
    var todayy = today.getYear() 
    if (todayy < 1000) todayy += 1900 
    var todaym = today.getMonth() 
    var todayd = today.getDate() 
    var todaystring = montharray[todaym] + " " + todayd + ", " + todayy 
    var paststring = montharray[m - 1] + " " + d + ", " + yr 
    var difference = (Math.round((Date.parse(todaystring) - Date.parse(paststring))/(24 * 60 * 60 * 1000)) * 1) 
    difference += "" 
    document.write("" + difference + "") 
} 
//enter the count up date using the format year/month/day 
countup(2007, 01, 24) 
</script> 

我試圖讓在千位(例如的1,234代替1234)輸出插入逗號。我怎樣才能做到這一點?

+0

這裏沒有真正的問題。投票結束。 –

+2

@Delan,我認爲這個問題是真實的,它只是需要一些清理工作。 –

+0

@Eric爲什麼你需要將空字符串('「」')添加到'差異'? –

回答

3

要爲每三分之一添加逗號,只需遍歷從後面和每三分之一轉換爲字符串的數字,添加一個逗號。

var str = "" + num; 
var s2 = ""; 
for(var i = str.length()-1; i != 0; i--){ 
    s2 += str.charAt(i); 
    if(0 == (str.length() - i) % 3) 
     s2 += ","; 
} 

或者這樣。對數學不太確定。

+0

這個。只要確保在循環中反向工作,以確保逗號是正確的。編輯:我添加了我的評論之前,他添加的代碼(只是所以沒有人認爲我瘋了):) – Kris

+0

評論以上,但這正是什麼已經躲過我...讓我的字符串從計數定時器到逗號功能。對不起,我是一個新手:「簡單地迭代從後面和每三分之一轉換爲字符串的數字」完全是莫名其妙的。 – Eric

+0

迭代遍歷每個項目,依次。轉換爲字符串的數字是12345(一個數字)變爲「12345」 - 一個字符串,因此您可以遍歷字符。從後面 - 你以「5」開始並轉到「1」。這是通過用'' - ''循環來完成的。每三分之一 - 用%符號完成,這是模運算符 - 你可能從數學課程中知道:)所以複製三個字符,放一個逗號,接下來三個字符,等等。 –