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

La partie décimale après la virgule est ignorée dans l'analyse des nombres à virgule flottante en JavaScript

<p>Voici un scénario simple. Je souhaite afficher la soustraction de deux valeurs sur mon site internet : </p> <pre class="brush:php;toolbar:false;">//La valeur sur mon site Web est : "75,00" var fullcost = parseFloat($("#fullcost").text()); //La valeur sur mon site est : "0,03" var enchèrescost = parseFloat($("#auctioncost").text()); alerte (coût complet); //Sortie : 75 alert(coût des enchères); //Sortie : 0</pre> <p>Quelqu’un peut-il me dire ce que je fais de mal ? </p>
P粉282627613P粉282627613396 Il y a quelques jours390

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

  • P粉587970021

    P粉5879700212023-08-22 12:50:38

    La fonction parseFloat de

    javascript n'accepte pas les paramètres de zone. Par conséquent, vous devez utiliser .替换,

    parseFloat('0,04'.replace(/,/, '.')); // 0.04

    répondre
    0
  • P粉635509719

    P粉6355097192023-08-22 00:17:29

    Il s’agit de « Par conception ». parseFloat La fonction ne considère que des parties de la chaîne jusqu'à ce qu'elle rencontre autre chose qu'un +, -, un nombre, un exposant ou un point décimal. Une fois qu'il voit la virgule, il arrête de chercher et ne considère que la partie "75".

    Pour résoudre ce problème, convertissez les virgules en décimales.

    var fullcost = parseFloat($("#fullcost").text().replace(',', '.'));

    répondre
    0
  • Annulerrépondre