Soru javascript'te toLocaleString () ve tofixed (2) nasıl kullanılır


Bunu javascript’te nasıl yapabilirim?

var num = 2046430; 
num.toLocaleString();

will give you "2,046,430";

Denediğim şey

var num = 2046430; 
num.toLocaleString().toFixed(2);

Beklenen çıktı 

"2,046,430.00";

32
2017-07-23 07:38


Menşei




Cevaplar:


MDN'den alındı:

Sözdizimi

numObj.toLocaleString([locales [, options]])

toLocaleString 2 argüman alır. İlki yereli, ikincisi seçenekler. Seçeneklere gelince, aradığınız şey:

minimumFractionDigits

Kullanılacak minimum fraksiyon hanesi sayısı.   Olası değerler 0 ile 20 arasındadır; normal sayı ve   yüzde biçimlendirme 0'dır; para birimi biçimlendirmesi için varsayılan   ISO 4217 para birimi kodu tarafından sağlanan minör birim basamak sayısı   Liste (eğer liste bu bilgiyi sağlamıyorsa).

https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Global_Objects/Number/toLocaleString

Yerel ayarı ayarlamadan seçenekleri ayarlayabilmek için, undefined değerini birinci argüman olarak iletebilirsiniz:

var num = 2046430;
num.toLocaleString(undefined, {minimumFractionDigits: 2}) // 2,046,430.00

Bununla birlikte, bu aynı zamanda kesir 2 basamaktan daha uzun olmasına izin verir. Bu yüzden bir tane daha seçenek aramalıyız. maximumFractionDigits. (Ayrıca bu MDN sayfasında)

var num = 2046430.123;
num.toLocaleString(undefined, {
  minimumFractionDigits: 2,
  maximumFractionDigits: 2
}) // 2,046,430.12

80
2017-07-23 07:48



Bana demo çalışabilir misiniz? - Question User
jsfiddle.net/st31wm96/1 - Sebastian Nette
Cool bunu bilmiyordum - jasonscript
çok çalışıyorum teşekkür ederim :) - Question User
Ayrıca bir şey daha. Kolaylık nedeniyle aşağıdaki gibi şeyler yapabilirsiniz: jsfiddle.net/st31wm96/2 Her zaman bunu el ile yazmak için oldukça tekrarlayıcı olabilir. - Sebastian Nette