javascript - Fuite d'arguments
怪我咯
怪我咯 2017-07-05 10:42:40
0
1
865

Qui peut aider à expliquer le concept de Fuite d'arguments

<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);
  }
怪我咯
怪我咯

走同样的路,发现不同的人生

répondre à tous(1)
某草草

Passez arguments给任何方法被称为leaking arguments

Malheureusement, transmettre des arguments à n'importe quel paramètre entraînera l'omission du moteur V8 utilisé dans Chrome et Node de l'optimiser, ce qui ralentira également les performances.

withArguments 不会被V8优化,withCopy Ce type de méthode est recommandé pour une utilisation dans un environnement en ligne, même si elle est un peu lourde.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal