性能:常规 vs 箭头函数

Meg*_*iae 7 javascript

我们都知道常规函数和箭头函数之间的区别。这不是关于这些差异的问题,而是关于他们的表现的问题。

由于箭头函数既不必创建它们自己的this值,也不必创建它们的arguments,因此它们似乎(至少在直觉上)应该很快。在一个非常简化的基准测试中:

let i;

console.time("regular");
const regular = function(a) {
  return a * a
};
i = 10000;
while (--i) regular(i);
console.timeEnd("regular");

console.time("arrow");
const arrow = a => a * a;
i = 10000;
while (--i) arrow(i);
console.timeEnd("arrow");
Run Code Online (Sandbox Code Playgroud)

在其他条件相同的情况下,箭头函数是否比常规函数更快?而且,如果“是”,差异是否与现实世界相关,或者我们可以将其作为不必要的微观优化而忽略吗?