jQuery의 숫자에 쉼표 추가
이 번호가 있습니다
10999
및 8094
및456
그리고 내가하고 싶은 것은 필요한 경우 올바른 위치에 쉼표를 추가하는 것뿐입니다.
10,999
및 8,094
및456
이것들은 모두 이와 같은 ap 태그 내에 있습니다 <p class="points">10999</p>
.
할 수 있습니까?
나는 다른 게시물 http://jsfiddle.net/pdWTU/1/ 의 도움으로 여기에서 시도했지만 작동하지 않는 것 같습니다.
감사
제이미
최신 정보
약간 혼란스러워서 여기 http://jsfiddle.net/W5jwY/1/
더 나은 방법을 위해 새로운 Globalization 플러그인을 살펴 보겠습니다.
감사
제이미
모든 브라우저에서 작동하며 이것이 필요한 전부입니다.
function commaSeparateNumber(val){
while (/(\d+)(\d{3})/.test(val.toString())){
val = val.toString().replace(/(\d+)(\d{3})/, '$1'+','+'$2');
}
return val;
}
정규식 덕분에 간결하고 요점을 썼습니다. 이것은 직선 JS이지만 다음과 같이 jQuery에서 사용할 수 있습니다.
$('#elementID').html(commaSeparateNumber(1234567890));
또는
$('#inputID').val(commaSeparateNumber(1234567890));
Number(10000).toLocaleString('en'); // "10,000"
Timothy Pirez 대답은 매우 정확했지만 사용자가 텍스트 필드에 입력 할 때 즉시 숫자를 쉼표로 바꿔야하는 경우 키업 기능을 사용할 수 있습니다.
$('#textfield').live('keyup', function (event) {
var value=$('#textfield').val();
if(event.which >= 37 && event.which <= 40){
event.preventDefault();
}
var newvalue=value.replace(/,/g, '');
var valuewithcomma=Number(newvalue).toLocaleString('en');
$('#textfield').val(valuewithcomma);
});
<form><input type="text" id="textfield" ></form>
최근에 출시 된 Microsoft의 jQuery에 대한 글로벌화 플러그인 살펴보기
Numeral.js를 살펴 보십시오 . 숫자, 통화, 백분율의 형식을 지정할 수 있으며 현지화를 지원합니다.
function delimitNumbers(str) {
return (str + "").replace(/\b(\d+)((\.\d+)*)\b/g, function(a, b, c) {
return (b.charAt(0) > 0 && !(c || ".").lastIndexOf(".") ? b.replace(/(\d)(?=(\d{3})+$)/g, "$1,") : b) + c;
});
}
alert(delimitNumbers(1234567890));
나는 당신이 일종의 현지화를하고 있다고 생각 하므로이 스크립트를 살펴보십시오 .
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/toLocaleString 에서 toLocaleString 참조 사용
function formatComma(value, sep = 0) {
return Number(value).toLocaleString("ja-JP", { style: "currency", currency: "JPY", minimumFractionDigits: sep });
}
console.log(formatComma(123456789, 2)); // ¥123,456,789.00
console.log(formatComma(123456789, 0)); // ¥123,456,789
console.log(formatComma(1234, 0)); // ¥1,234
또 다른 접근 방식 :
function addCommas(nStr)
{
nStr += '';
x = nStr.split('.');
x1 = x[0];
x2 = x.length > 1 ? '.' + x[1] : '';
var rgx = /(\d+)(\d{3})/;
while (rgx.test(x1)) {
x1 = x1.replace(rgx, '$1' + ',' + '$2');
}
return x1 + x2;
}
var a = addCommas(10000.00);
alert(a);
또 다른 놀라운 플러그인 : http://www.teamdf.com/web/jquery-number-format/178/
이를 수행하는 또 다른 방법 :
function addCommas(n){
var s = "",
r;
while (n) {
r = n % 1000;
s = r + s;
n = (n - r)/1000;
s = (n ? "," : "") + s;
}
return s;
}
alert(addCommas(12345678));
Here is my coffeescript version of @baacke's fiddle provided in a comment to @Timothy Perez
class Helpers
@intComma: (number) ->
# remove any existing commas
comma = /,/g
val = number.toString().replace comma, ''
# separate the decimals
valSplit = val.split '.'
integer = valSplit[0].toString()
expression = /(\d+)(\d{3})/
while expression.test(integer)
withComma = "$1,$2"
integer = integer.toString().replace expression, withComma
# recombine with decimals if any
val = integer
if valSplit.length == 2
val = "#{val}.#{valSplit[1]}"
return val
참고URL : https://stackoverflow.com/questions/3883342/add-commas-to-a-number-in-jquery
'Nice programing' 카테고리의 다른 글
Swift 3-날짜 객체 비교 (0) | 2020.09.25 |
---|---|
.Net에서 창을 항상 맨 위에 유지하는 방법은 무엇입니까? (0) | 2020.09.25 |
uitableview의 업데이트 시작, 업데이트 종료 블록에서 애니메이션을 원하지 않습니까? (0) | 2020.09.25 |
Is there a short cut for going back to the beginning of a file by vi editor? (0) | 2020.09.25 |
Visitor pattern's purpose with examples [duplicate] (0) | 2020.09.25 |