我的意思是,
我应该使用这个干净的代码......
var rounded=num.toFixed(n);
...而不是这个丑陋的代码...
var pow10=Math.pow(10,n),
rounded=''+Math.round(num*pow10)/pow10;
即使第二个更快? (http://jsperf.com/round-numbers-number-decimals/2)
为什么第一个这么慢?浏览器无法为第一个代码实现第二个代码吗?
答案 0 :(得分:1)
除非你有一个特定的用例需要大量迭代的速度,否则我会坚持.toFixed()
,因为它简单易懂,易于理解你在做什么。但是,如果你必须优化速度,至少你知道你可以从哪里开始!