I know that certain numbers will get slight variations from their original value. Eg. 0.1 + 0.2 -> 0.30000000000000004. But if I do Math.round(0.30000000000000004 * 100) / 100, I will get the correct answer -> 0.3. I ran a Javascript test and found that the results will accurate at least up to 1e+10. Are there any caveats to doing this?