V8 中的函数调用优化
Function call optimization in V8
V8 是否优化了相同函数和参数的多个函数调用?在下面的示例中,使用相同的参数调用了两次 Variance。
var Variance = require('variance');
function summary(items) {
return {
variance: Variance(items.value.map((item) => item.value)),
standardDeviation: Math.sqrt(Variance(items.value.map((item) => item.value))),
};
}
v8 确实优化了使用相同参数重复调用的函数,但在您的示例中,它们实际上不是相同的参数(它们是不同的 object/array 引用)。
V8 是否优化了相同函数和参数的多个函数调用?在下面的示例中,使用相同的参数调用了两次 Variance。
var Variance = require('variance');
function summary(items) {
return {
variance: Variance(items.value.map((item) => item.value)),
standardDeviation: Math.sqrt(Variance(items.value.map((item) => item.value))),
};
}
v8 确实优化了使用相同参数重复调用的函数,但在您的示例中,它们实际上不是相同的参数(它们是不同的 object/array 引用)。