我在 javascript 中看到了许多关于模拟和动画的问题,这些问题通常涉及计算斜边:
hypot = Math.sqrt(x*x + y*y);
由于笛卡尔坐标是大多数这些引擎的首选武器,因此需要这些计算来找到点对之间的距离等。因此,计算斜边的任何加速都可能对许多项目有很大帮助。
为此,你能看到比上面的简单实现更快的方法吗?基于SuperCollider 中的近似函数,我发现了一个近似值,它在 Chrome 中稍微快一点,但在 Firefox 中却慢得多。
编辑 2015-08-15:我已将接受的答案切换为 Math.hypot 之一;我怀疑目前的务实方法是使用 Math.hypot 或合成的 hypot 函数(如果不可用),如果足够且 Math.hypot 不可用,则与平方(根据 sch 的答案)进行比较。