>웹 프론트엔드 >JS 튜토리얼 >share_javascript 기술을 위한 5가지 자바스크립트 숫자 형식 지정 기능

share_javascript 기술을 위한 5가지 자바스크립트 숫자 형식 지정 기능

WBOY
WBOY원래의
2016-05-16 17:58:371140검색
소수 반올림
이 두 코드는 반올림에 도움이 되며 가격이나 주문을 표시하는 데 유용합니다.
코드 1:
코드 복사 코드는 다음과 같습니다.

function MoneyFormatted(amount) {
var i =parseFloat(amount)
if(isNaN( i) ) { i = 0.00; }
var minus = ''
if(i < 0) { minus = '-'; }
i = Math.abs(i); >i = parsInt((i .005) * 100);
i = i / 100;
s = new String(i)
if(s.indexOf('.') < 0 ) { s = '.00'; }
if(s.indexOf('.') == (s.length - 2)) { s = '0' }
s = 빼기 s; 🎜> return s;
}
/**
* 사용법: 통화 형식(12345.678);
* 결과: 12345.68
**/


코드 2:


function format_number(pnumber,decimals){
if (isNaN(pnumber)) { return
if (pnumber==' ') { return 0};
var snum = new String(pnumber);
var sec = snum.split('.')
var Whole = ParsFloat(sec[0) ]);
var result = '';
if(sec.length > 1){
var dec = new String(sec[1])
dec = String(parseFloat(sec) [1])/ Math.pow(10,(dec.length - 소수)));
dec = String(전체 Math.round(parseFloat(dec))/Math.pow(10,decimals)); 🎜>var dot = dec.indexOf('.');
if(dot == -1){
dec = '.'
dot = dec.indexOf('.'); 🎜>}
while(dec.length <= 소수점 이하 자릿수) { dec = '0' }
result = dec
} else{
var dot
var dec; new String(전체) ;
dec = '.';
dot = dec.indexOf('.')
while(dec.length <= 소수점 이하 자릿수) { dec = '0'; }
결과 = dec;
}
결과 반환
}
/**
* 사용법: format_number(12345.678, 2);
* 결과: 12345.68
**/

쉼표 추가

둘 다 이 스니펫을 사용하면 세 자리마다 쉼표를 추가하여 큰 숫자를 더 쉽게 읽을 수 있습니다.
코드 1:


코드 복사

코드는 다음과 같습니다. function CommaFormatted( amount) { var delimiter = ","; // 원하는 경우 쉼표를 바꿉니다. amount = new String(amount) var a = amount.split('.',2)
var d = a [1];
var i = parsInt(a[0]);
if(isNaN(i)) { return ''; }
var minus = ''; (i < ; 0) { 빼기 = '-'; }
i = Math.abs(i)
var n = new String(i)
var a =
while(n .length > 3)
{
var nn = n.substr(n.length-3)
a.unshift(nn)
n = n.substr(0) ,n.길이-3);
}
if(n.length > 0) { a.unshift(n) }
n = a.join(구분자); d.length < 1) { 금액 = n; }
else { 금액 = n '.' d }
금액 = 마이너스 금액
}
/* *
* 사용법: CommaFormatted(12345678);
* 결과: 12,345,678
**/


코드 2:




코드 복사

코드는 다음과 같습니다.

return x1 x2; >*/



PHP의 숫자 형식

이 자바스크립트 코드의 기능적 디자인은 PHP의 nubmer_format 함수에서 비롯되었습니다. 반올림하고 쉼표로 구분할 수 있습니다. 그리고 소수점 구분을 맞춤설정할 수 있습니다.




코드 복사


코드는 다음과 같습니다.

함수 number_format (숫자, 십진수, 십진수, 천_십수) {
number = (숫자 '').replace(/[^0-9 -Ee.]/g, '');
var n = !isFinite( 숫자) ? 0 : 숫자,
prec = !isFinite(십진수) ? 0 : Math.abs(십진수),
sep = (천 단위_sep 유형 === '정의되지 않음') ? ',' : 수천_셉,
dec = (dec_point 유형 === '정의되지 않음') ? '.' : dec_point,
s = '',
toFixedFix = function (n, prec) {
var k = Math.pow(10, prec);
return '' Math.round(n * k) / k;
};
// IE에 대한 수정입니다.parseFloat(0.55).toFixed(0) = 0;
s = (prec ? toFixedFix(n, prec) : '' Math.round(n)).split('.');
if (s[0].length > 3) {
s[0] = s[0].replace(/B(?=(?:d{3}) (?!d)) /g, 9월);
}
if ((s[1] || '').length < prec) {
s[1] = s[1] || '';
s[1] = new Array(prec - s[1].length 1).join('0');
}
return s.join(dec);
}
/**
* 사용법: number_format(123456.789, 2, '.', ',');
* 결과: 123,456.79
**/

添加一个英文的排序后缀
复主代码 代码如下:

Number.prototype.toOrdinal = function() {
var n = this % 100;
var 접미사 = ['th', 'st', 'nd', 'rd', 'th'];
var ord = n < 21? (n 4 ? 접미사[0] : 접미사[n % 10]);
이 명령을 반환하세요.
}
/*
* 사용법:
* var myNumOld = 23
* var myNumNew = myNumOld.toOrdinal()
* 결과: 23rd
*/

除去不数字字符
复代代码 代码如下:

기능 StripNonNumeric( str )
{
str = '';
var rgx = /^d|.|-$/;
var out = '';
for( var i = 0; i < str.length; i )
{
if( rgx.test( str.charAt(i) ) ){
if( !( ( str .charAt(i) == '.' && out.indexOf( '.' ) != -1 ) ||
( str.charAt(i) == '-' && out.length != 0 ) ) ){
out = str.charAt(i);
}
}
}
반환;
}
/*
* 사용법: StripNonNumeric('123et45dhs6.789');
* 결과: 123456.789
*/
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.