意味
配列: プロトタイプが要素のトラバースおよび変更に関連する操作を提供するリストのようなオブジェクト。
疑似 (クラス) 配列: 長さのプロパティのみを持ち、Array オブジェクト メソッドを持たず、インデックスによって格納されるオブジェクト。
一般的な疑似配列
- 関数のパラメーター オブジェクトの引数。
- querySelectorAll で取得したコレクション。
- getElementsByName/ClassName/TagName で取得したコレクション。
- カスタム クラス配列、例: let arrLike = {0:'a',1:'A',length:2}。
疑似配列と配列の間の変換
1. 配列を疑似配列に変換
ここでは変換というより疑似配列を生成し、空配列を借りて push メソッドを呼び出し、apply でこれを obj に束縛変更して渡すという方法です。配列arrで。
const arrOr = [1, 2, 3];
const objOr = {
};
Array.prototype.push.apply(objOr, arrOr);
console.log(objOr);
//{0: 1, 1: 2, 2: 3, length: 3}
2.疑似配列を配列に変換する
- Array.prototype.push.call(arrayLike)
- […配列のように]
- Array.from(arrayLike) >> Array.from() メソッドは、Array-like または Iterable オブジェクトから Array インスタンスの新しい浅いコピーを作成します。