呼び出しと適用の両方でこの点が変わりますが、ここでの結果は異なります。これは奇妙です
光阴似箭催人老,日月如移越少年。
読みやすいようにここに書いてください。
call: 最初の方法は、オブジェクトを直接渡すことです。
apply: 2つ目は配列長3の配列として扱われますが、値が無いのでunknown{length: 3} => {length: 3, 0: 未定義, 1: 未定義, 2:未定義 }したがって、出力 3 未定義
call は連続パラメータを受け入れ、apply は配列パラメータを受け入れます。 A.call(this, a,b,c,d)A.apply(this, [a,b,c,d])
call() メソッドの 2 番目のパラメーターは配列内の項目です
apply() メソッドの 2 番目のパラメータは配列です
読みやすいようにここに書いてください。
call:
最初の方法は、オブジェクトを直接渡すことです。
apply:
2つ目は配列長3の配列として扱われますが、値が無いのでunknown
{length: 3} => {length: 3, 0: 未定義, 1: 未定義, 2:未定義 }
したがって、出力 3 未定義
call は連続パラメータを受け入れ、apply は配列パラメータを受け入れます。
A.call(this, a,b,c,d)
A.apply(this, [a,b,c,d])
call() メソッドの 2 番目のパラメーターは配列内の項目です
apply() メソッドの 2 番目のパラメータは配列です