Maison  >  Questions et réponses  >  le corps du texte

javascript - Posez une question intéressante: comment convertir des nombres au format montant

En faisant des affaires récemment, j'ai rencontré un problème intéressant :

Afin de calculer l'argent avec précision, le serveur convertit l'argent en centimes (1 yuan = 100)

Au début, vous devez le convertir au format monétaire 159 => 1,59 yuans

Après avoir examiné le projet, la méthode de mise en œuvre consiste à utiliser tofixed, mais il y a des bugs.

Demande

159 -> 1.59元
1500 -> 15.00 元

88 -> 0.88元
8 -> 0.08元

De plus, parfois le format d'affichage est (le yuan est plus grand, le centime est plus petit)

曾经蜡笔没有小新曾经蜡笔没有小新2662 Il y a quelques jours913

répondre à tous(3)je répondrai

  • PHP中文网

    PHP中文网2017-07-05 11:04:21

    Un exemple simple est le suivant :

    function convertUnit (value) {
      // bug 常见出现自 parseInt 未指定进制
      return parseFloat(parseInt(value, 10) / 100).toFixed(2) + '元'
    }

    Cas de test simple :

    > parseFloat(169 / 100).toFixed(2)
    '1.69'
    > parseFloat(8 / 100).toFixed(2)
    '0.08'
    > parseFloat(88 / 100).toFixed(2)
    '0.88'
    > parseFloat(1500 / 100).toFixed(2)
    '15.00'

    répondre
    0
  • 三叔

    三叔2017-07-05 11:04:21

    function toPrice(d){
    return `00${d}`.replace(/(.*)(\d{2})/g,'\.元').replace(/0*([1-9]*\d\..*)/,'')
    }

    répondre
    0
  • 世界只因有你

    世界只因有你2017-07-05 11:04:21

    (1232/100).toLocaleString()

    répondre
    0
  • Annulerrépondre