Javascript always returns float numbers

2019-09-20 05:40发布

问题:

Thats my jquery code. And the variable "procenti" always return like 92.3076923076923 % long decimal number. I would like that number to be without the decimals, only 92%. I tried .toFixed() method but it doesnt works.

When the equation is like procenti=(3/10)*100; == 30%, the number in html looks just what i want without decimals.

for(var i=1; i<14; i++){

  var zmage=parseFloat($('#zm'+i).text());
  var odigrane=parseFloat($('#od'+i).text());
  var procenti=0;


  if(zmage == 0){
      $('#pr'+(i)).html(0 + ' %');
  }
  else{
      procenti=(zmage/odigrane)*100;
      $('#pr'+(i)).text(procenti + ' %');
  }

  }

回答1:

round() function will round off value.

Math.round(procenti);

Otherwise there are another functions ceil() & floor()



回答2:

You should use either

Math.floor() 

It returns the largest integer less than or equal to a given number.

or

Math.ceil() 

It returns the smallest integer greater than or equal to a given number.

or

Math.round()

It returns the value of a number rounded to the nearest integer.

It depends on what you actually want.



回答3:

You could do something like this:

function strip(number) {
return (parseFloat(number).toPrecision(12));

}

Hope this helps && pozdrav iz Velenja! :)