我目前正在写一些画布的东西,当然我使用window.requestAnimationFrame
. 我通常有一些全局draw
或loop
方法来调用draw
我要绘制的对象的适当方法,并将画布和上下文对象传递给它们。
现在我在问自己(因为我只有一个带有 draw 方法的对象)是否可以剥离该全局draw
方法并将对象的 draw 方法直接传递给window.requestAnimationFrame
. 当然,我必须使用Function.bind
才能this
正确使用 - 我还必须绑定canvas
并context
作为该快捷方式的参数。
想知道是否对性能有任何影响,我在 jsperf 上编写了一个测试。
事实证明,捷径方法慢了大约 5-7%。
这是为什么?