8

配列の最初の要素をポップするためargumentsの規則を学習しました(これも実際には であることがわかりましたObject)。今、私は反対のことをする必要があります。操作を使用してunshift、配列の先頭に値を追加するarguments(または配列Objectのように振る舞う) 必要があります。これは可能ですか?私は試した:

Array.prototype.unshift.apply('hello', arguments);

それは何の影響もありargumentsませんでした。

4

1 に答える 1

21
  1. 呼び出す.call()代わりに使用する.apply()unshift()

  2. の値argumentsとして設定thisunshift()

  3. 'hello'への引数として設定unshift()


Array.prototype.unshift.call(arguments, 'hello');

@lonesomeday が指摘したように、.apply()代わりに を使用でき.call()ますが、2 番目の引数として配列のような引数を渡す必要があります。したがって、あなたの場合、'hello'配列でラップする必要があります。

于 2013-11-11T18:52:55.490 に答える