Rumah > Soal Jawab > teks badan
Boleh sesiapa tolong jelaskan konsep Membocorkan hujah
<script>
Benchmark.prototype.setup = function() {
function otherFunc(a, b) {
return a + b;
}
function withArguments(x) {
var a = arguments;
return otherFunc.apply(x, Array.prototype.slice.call(a, 1));
}
function withCopy(x) {
var a = [];
var i, len = arguments.length;
for (i = 1; i < len; i += 1) {
a[i - 1] = arguments[i];
}
return otherFunc.apply(x, a);
}
某草草2017-07-05 10:44:40
Lulus arguments
给任何方法被称为leaking arguments
Malangnya, menghantar argumen kepada mana-mana parameter akan menyebabkan enjin V8 yang digunakan dalam Chrome dan Node melangkau mengoptimumkannya, yang juga akan menjadikan prestasi agak perlahan.
withArguments
不会被V8优化,withCopy
Kaedah seperti itu disyorkan untuk digunakan dalam persekitaran dalam talian, walaupun ia agak menyusahkan.