2017-07-05 25 views
5

Başlık çok özetliyor ihtiyaçlarımı ile Biçimlendirme sayılar.Açısal: virgül

123456789 => 123,456,789 
12345 => 12,345 

Bu dönüşümü elde etmenin en iyi yolu nedir? Çıktımıma eklenecek $ veya para birimi sembolüne ihtiyacım olmadığı için Angular-2'de para borcu önermeyin.

+1

Olası çoğaltılabilir [JavaScript ile binlerce ayırıcı olarak virgülle nasıl sayı yazdırılır] (https://stackoverflow.com/questions/2901102/how-to-print-a-number-with-commas-as -thousands-separators-in-javascript) – gforce301

+1

@ gforce301 CodeWarrior'ın bir boru çözümü ile yanıtladığı gibi, o da farklı bir ortamdı, o da açısal2 için bir çözüm istedi. –

cevap

1

mevcut bu

{{attr | number}}

Working Plunker
Dokümantasyon gibi:

var str = "The quick brown fox jumps over the lazy dogs.".replace(/(.{2})/g,"$1,"); 

Ve Buçıkacak Yani

var num = numberWithCommas(1234567); 
console.log(num); 

çıktısı verir 1,234,567

function numberWithCommas(x) { 
    var parts = x.toString().split("."); 
    parts[0] = parts[0].replace(/\B(?=(\d{3})+(?!\d))/g, ","); 
    return parts.join("."); 
} 

:

Ama sayıları ayrıştırmak istiyorsanız, bu fonksiyonu kullanmalısınız, buradaki bilgiler sorunuzu kötü formüle düşünüyorum, bu yüzden

1
<!DOCTYPE html> 
<html> 
    <head> 
    <script type="text/javascript"> 
    function printNo() { 
     document.getElementById('text').innerHTML = 
     Number(1234355).toLocaleString('en-GB'); 
     } 
    </script> 
    </head> 

    <body onload="printNo()"> 
    <h1 id="text"></h1> 

    </body> 

</html> 

https://plnkr.co/edit/OU0koo2r1YuKC1rC3tpN?p=preview [

]