Gibt es irgendwelche Browser Einschränkungen oder andere Probleme, die mich zu tun, verhindert:Ist es notwendig, vor dem Aufruf von apply Argumente in Array zu konvertieren?
fn.apply(this, arguments);
gegen:
fn.apply(this, Array.prototype.slice.call(arguments));
Ich weiß, dass apply
nimmt einen „echten“ Array
als zweites Argument, aber vorbei ein Argumentsammlung scheint genauso gut zu funktionieren. oder...?
Ich dachte auch, aber ich sehe 'Array.prototype.slice.call (Argumente)' in so vielen "professionellen" Codebeispielen, ich dachte, dass es einen gültigen Grund geben muss ... – David
Es ist notwendig, wenn Sie wollen Array-Operationen wie Append, Shift oder Push auszuführen, so dass die meisten Entwickler, die ich kenne, es mehr aus Gewohnheit machen als alles andere. – saml