简体   繁体   中英

Is there a way to show numbers better formatted in javascript? (with commas etc..)

If I use toLocaleString at the end of each line, I get 1 number formatted, and all other numbers get value NaN.

let cta = document.getElementById('cnt');

cta.addEventListener('click', function(e) {
  let deviza = document.getElementById('deviza').value;
  let kurs = document.getElementById('kurs').value;
  let prihod = document.getElementById('prihod').value = (deviza * kurs).toFixed(2);
  let trosak = document.getElementById('trosak').value = (prihod * .2).toFixed(2);
  let osnovica = document.getElementById('osnovica').value = (parseFloat(prihod) - parseFloat(trosak)).toFixed(2);
  let porez = document.getElementById('porez').value = (osnovica * .2).toFixed(2);
  let pio = document.getElementById('pio').value = (osnovica * .255).toFixed(2);
  let zdrav = document.getElementById('zdrav').value = (osnovica * .103).toFixed(2);
  let totalPorez = document.getElementById('totalPorez').value = (parseFloat(porez) + parseFloat(pio) + parseFloat(zdrav)).toFixed(2);
  let netoPrihod = document.getElementById('netoPrihod').value = (parseFloat(prihod) - parseFloat(totalPorez)).toFixed(2);
})

Try using Numeral.js , library that is rich in number formatting options, so you don't have to reinvent the wheel:)

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM