简体   繁体   中英

JavaScript - Incorrect division

 perc = 15/30;
 //result=Math.round(perc*100)/100  //returns 28.45
 $('#counter').text(perc);
 $('#total').text(count);

returns back 0.5% which is suppose to be 50.00% ... how do I fix this? :S

You do realize that word percent quite literally translates into "per cent" or "per 100" since cent is the latin root that's used everywhere meaning "100" or "one-hundredth".

  • Century (100 years)
  • US Cent (100th of a dollar)
  • Centurion (Those who commanded 100 soldiers)
  • Centipede (creature with 100 legs)

So 50% becomes 50 per cent becomes 50 per 100

And, since in mathematical terms, the word per means divide (miles per hour == mph == m/h) then we can distill 50% down to:

50/100

Which, surprisingly enough, is represented as the decimal number .5

15/30 = 0.5

if you want to have percent number you have to multiply it by 100.

I am a low rep user so here goes. http://en.wikipedia.org/wiki/Percentage

Treat the % sign as a constant equal to 0.01. Thus, when working with a number like 50% , treat it as 50 * 0.01 or 0.5 .

0.5 = n %                  // I want to know what 0.5 is as a percent
0.5 / % = n * % / %        // Divide both sides by the constant
0.5 / % = n                // Remove the excess
0.5 / 0.01 = n             // Replace the constant
50 = n                     // You have your answer

只需乘以100即可。

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