2011-08-07 6 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> 

私は何千もの場所(例えば、1234ではなく1234の)で出力挿入コンマを作成しようとしています。これどうやってするの?

+0

ここに本当の質問はありません。そのように閉じる投票。 –

+2

@Delan、私は質問が本当だと思う、ちょうどいくつかのクリーンアップが必要です。 –

+0

@Ericなぜあなたは空文字列( '' '')を 'difference'に追加する必要がありますか? –

答えて

3

コンマを3分の1ごとに追加するには、後ろから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

上記のコメントはありませんが、これはまさに私を逃してしまった...カウントダウンタイマーからコンマ関数に私の文字列を取得しています。申し訳ありません、私はこれを初心者です: "単純に後ろから3列目の文字列に変換された数字を繰り返します"は完全に困惑しています。 – Eric

+0

反復は各アイテムを順番に処理しています。文字列に変換された数値は12345(数値)で、 "12345"になります。これは文字列を反復処理するための文字列です。後ろから - "5"で始まり、 "1"に進みます。これは 'for'ループで' i - 'で終わります。そして3分の1 - これはモジュロ演算子である%記号で行われます。これはおそらく数学の授業で知っています:)したがって、3つの文字をコピーし、コンマを入れ、次の3つの文字などをコピーします。 –

関連する問題