1. ホーム
  2. javascript

[解決済み] 複数の要素を配列にプッシュする

2022-03-23 05:08:06

質問

複数の要素を1つの配列としてプッシュしたいのですが、エラーが発生します。

> a = []
[]
> a.push.apply(null, [1,2])
TypeError: Array.prototype.push called on null or undefined

rubyでやるような似たようなことをやろうとしているのですが、その時に思ったのが apply は以下のようなものです。 * .

>> a = []
=> []
>> a.push(*[1,2])
=> [1, 2]

解決方法は?

を持つオブジェクトのほとんどの関数を使用する場合 apply または call を指定します。 context パラメータは、作業中のオブジェクトでなければなりません。

この場合 a.push.apply(a, [1,2]) (正確には Array.prototype.push.apply(a, [1,2]) )