例: 12345 は 12,345.00 としてフォーマットされます。 12345.6 は 12,345.60 としてフォーマットされます。 12345.67 は 12,345.67 としてフォーマットされます。 小数点以下 2 桁のみを残します。 帰ってきたら、書式設定関数を書きました。小数点以下の桁数を制御し、自動的に四捨五入することができます。 コードは次のとおりです。
function fmoney( s, n) { n = n > 0 && n s = parseFloat((s "").replace(/[^d.-]/g, "")).toFixed (n) ""; var l = s.split(".")[0].split("").reverse(), r = s.split(".") [1]; t = ""; for (i = 0; i t = l[i] ((i 1) % 3 == 0 && (i 1) ! = l.length ? "," : ""); return t.split("").reverse("") "." 🎜>} 呼び出し: fmoney("12345.675910", 3)、戻り値 12,345.676
関数の復元:
function rmoney(s) {
return parseFloat(s.replace(/[^d.-]/g, "" )); } 例 (コードを HTML ファイルとして保存し、実行して効果を確認できます):
<SCRIPT> <div class="codebody" id="code66777">function fmoney(s, n) { <br>n = n > ; 0 && n s = parseFloat((s "").replace(/[^d.-]/g, "")).toFixed(n) <br>var l = s.split(".")[0].split("").reverse(), r = s.split(".")[1]; <br>for (i = 0; i t = l[i] ((i 1) % 3 == 0 && (i 1) != l.length ? " ," : ""); <br>} <br>return t.split ("").reverse().join("") "." r; <br>} <br>function rmoney(s) { <br>return parseFloat(s.replace(/[^d.-]/ g, "")); <br>} <br>function g(id) { <br>return document.getElementById(id); 🎜>} <br>window.onload = function() { <br>var num, txt = g("txt"), txt2 = g("txt2"), btn = g("btn"), btn2 = g ("btn2")、span = g("span"); <br> btn.onclick = function() { <br>num = parseInt(g("num").value); fmoney(txt.value, num); <br>txt2.value(txt2.value, num); <br>btn2.onclick = function() { <br>num = parseInt( "num").value); <br>span.innerHTML = "<br> fmoney(txt.value) rmoney(txt2.value), <br>}; 🎜></SCRIPT>
小数点:
/オプション> <オプション値="4">/オプション> <オプション値="5"オプション> > span id="span">
添付:
コードをコピーします
コードは次のとおりです:
/* * formatMoney(s,type) * 機能: 金額をカンマで千単位に分割します * パラメーター: s、書式設定する必要がある金額の値 * パラメータ: type、書式設定された金額に小数点以下の桁が必要かどうかを決定します。 * 戻り値: 書式設定された数値文字列を返します。 */ function formatMoney(s, type) { if ( /[ ^0-9.]/.test(s)) return "0"; if (s == null || s == "") return "0" >s; = s.toString().replace(/^(d*)$/, "$1."); s = (s "00").replace(/(d*.dd)d*/ , " $1"); s = s.replace(".", ","); var re = /(d)(d{3},)/; while (re.test( s)) s = s.replace(re, "$1,$2"); s = s.replace(/,(dd)$/, ".$1"); == 0) {// 小数点以下の桁なし(デフォルトは小数点以下の桁あり) var a = s.split(".") if (a[1] == "00") { s = a[0]; } } return s; } /* * 一般的な DateAdd(interval,number,date) 関数: 実装 日付加算関数 * パラメータ: 追加する時間間隔を示す文字列式。 パラメータ: 追加する時間間隔の数を示す。 *戻り値: 新しい時刻オブジェクト。var now = new Date(); var newDate = DateAdd("day",5,now); * author:devinhua(○から開始) update:2010 -5-5 20:35 */ function DateAdd(interval, number, date) { if (date == null) return ""; switch (interval) { case "day" : 日付 = 新しい日付 (日付); 日付 = 数値 * 24 * 60 * 1000; 日付 = 新しい日付 (日付); 🎜>return date; break; return ""; }