집 >
웹 프론트엔드 >
JS 튜토리얼 >
JS는 쉼표로 구분된 숫자 금액의 형식을 지정하고 소수점 두 자리를 유지합니다_javascript 기술
JS는 쉼표로 구분된 숫자 금액의 형식을 지정하고 소수점 두 자리를 유지합니다_javascript 기술
WBOY
풀어 주다: 2016-05-16 17:19:42
원래의
1872명이 탐색했습니다.
예: 12345는 12,345.00으로 형식화됩니다. 12345.6은 12,345.60으로 형식화됩니다. 12345.67은 12,345.67로 형식화됩니다. 소수점 두 자리만 남겨두세요. 돌아온 후 서식 기능을 작성했습니다. 소수점 이하 자릿수를 제어하고 자동으로 반올림할 수 있습니다. 코드는 다음과 같습니다.
function fmoney( s, n) { n = n > 0 && n <= 20 ? n : 2 "")).toFixed (n) ""; var l = s.split(".")[0].split("").reverse(), r = s.split(".") [1]; t = ""; for (i = 0; i < l.length; i ) { t = l[i] ((i 1) % 3 == 0 && (i 1) ! = l.length ? "," : "") } return t.split("").reverse().join("") r; 🎜>}
코드 복사 코드는 다음과 같습니다.<SCRIPT> </div>function fmoney(s, n) { <div class="codebody" id="code66777">n = n > ; 0 && n s = parsFloat((s "").replace(/[^d.-]/g, "")).toFixed(n) ""; <br>var l = s.split(".")[0].split("").reverse(), r = s.split(".")[1] <br>t = ""; <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 parsFloat(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 = parsInt(g("num").value) <br>txt.value = fmoney(txt.value, num); <br>txt2.value = fmoney(txt2.value, num) <br>}; "num").value); <br>span.innerHTML = "=" <br> fmoney(rmoney(txt.value) rmoney(txt2.value), num) <br>}; 🎜></SCRIPT> 소수점: < ;select id="num"> value="3">3 < 옵션 value="4">4
첨부:
코드 복사
코드는 다음과 같습니다.
/* * formatMoney(s,type) * 함수: 금액을 쉼표로 천 단위로 나눕니다. * 매개변수: s, 형식을 지정해야 하는 금액 값 * 매개변수: 형식화된 금액에 소수 자릿수가 필요한지 여부를 결정합니다. * 반환: 형식화된 숫자 문자열을 반환합니다. */ 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") if (입력 == 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) * 작성자:devinhua(○부터 시작) update:2010 -5-5 20:35 */ function DateAdd(간격, 숫자, 날짜) { if (date == null) return ""; switch(간격) { case "day" : 날짜 = 새 날짜(날짜); 날짜 = 숫자 * 24 * 60 * 60 * 1000 날짜 = 새 날짜(날짜); 🎜>반환 날짜; 휴식 기본값: 반환 } }