5

ブラウザの制限や、私が実行できないその他の問題はありますか?

fn.apply(this, arguments);

対:

fn.apply(this, Array.prototype.slice.call(arguments));

私はそれが2番目の引数としてapply「真」をとることを知っていますArrayが、引数コレクションを渡すことは同じようにうまくいくようです。また...?

4

2 に答える 2

4

MDNによると、「指定されたこの値と、配列(またはオブジェクトのような配列)として提供された引数を使用して関数を呼び出します」。それが配列のようなオブジェクトであることを考えるとarguments、それを使用することに制限はありません。

実際、説明argumentsには、有効なパラメータであると明示的に記載されています。

于 2012-10-01T20:17:28.917 に答える
0

MDNでのサポートは不明です。

Firefoxだけがの2番目の引数に配列のようなオブジェクトを受け入れることが知られていますFunction.prototype.apply()。直接通過する前に注意を払いargumentsます。

于 2016-05-17T01:08:11.237 に答える