プロトタイプ-列挙
列挙可能なクラスは、列挙に役立つメソッドの大規模なセットを提供します。列挙型は、値のコレクションとして機能するオブジェクトです。
列挙メソッドは、主に配列とハッシュを列挙するために使用されます。ObjectRangeや、列挙メソッドを使用できるさまざまなDOMまたはAJAX関連のオブジェクトなどの他のオブジェクトもあります。
コンテキストパラメータ
イテレータを使用するEnumerableのすべてのメソッドは、次の(オプションの)パラメータとしてコンテキストオブジェクトも使用します。コンテキストオブジェクトは、イテレータがバインドされるものであるため、this その中のキーワードはオブジェクトを指します。
var myObject = {};
['foo', 'bar', 'baz'].each(function(name, index) {
this[name] = index;
}, myObject); // we have specified the context
myObject;
これにより、次の結果が生成されます-
出力
{ foo: 0, bar: 1, baz: 2}
効率的に使用する
すべての要素で同じメソッドを呼び出す必要がある場合は、invoke()メソッドを使用します。
すべての要素で同じプロパティをフェッチする必要がある場合は、pluck()メソッドを使用してください。
findAll /選択方法は、与えられた述語に一致するすべての要素を取得します。逆に、reject()メソッドは、述語に一致しないすべての要素を取得します。両方のセットが必要な特定のケースでは、2回のループを回避できます。partition()メソッドを使用するだけです。
Enumerableに関連するすべてのメソッドの完全なリストは次のとおりです。
プロトタイプの列挙可能なメソッド
NOTE −少なくともprototype.jsのバージョン1.6を使用していることを確認してください。
S.No. | 方法と説明 |
---|---|
1.1。 | すべて() 直接または提供されたイテレータによる計算を通じて、すべての要素がブール値でtrueに相当するかどうかを判別します。 |
2.2。 | どれか() 直接または提供されたイテレータによる計算を通じて、少なくとも1つの要素がブール値でtrueに相当するかどうかを判別します。 |
3.3。 | collect() 各要素にイテレータを適用した結果を返します。map()としてエイリアスされます。 |
4.4。 | 検出() イテレータがtrueを返す最初の要素を検索します。find()メソッドによってエイリアスされます。 |
5.5。 | 各() これにより、すべての要素を一般的な方法で繰り返し処理してから、Enumerableを返すことができるため、チェーン呼び出しが可能になります。 |
6.6。 | eachSlice() 指定されたサイズに基づいてアイテムをチャンクにグループ化します。最後のチャンクはおそらく小さくなります。 |
7。 | エントリ() より一般的なtoArrayメソッドのエイリアス。 |
8.8。 | find() イテレータがtrueを返す最初の要素を検索します。detect()の便利なエイリアス。 |
9.9。 | findAll() イテレータがtrueを返したすべての要素を返します。select()としてエイリアスされます。 |
10.10。 | grep() フィルタに一致するすべての要素を返します。イテレータが提供されている場合は、選択された各要素の戻り値を生成するために使用されます。 |
11.11。 | inGroupsOf() アイテムを固定サイズのチャンクにグループ化し、必要に応じて特定の値を使用して最後のチャンクを埋めます。 |
12.12。 | include() ==比較演算子に基づいて、指定されたオブジェクトがEnumerableにあるかどうかを判別します。member()としてエイリアスされます。 |
13.13。 | inject() イテレータの連続した結果に基づいて、結果値を段階的に作成します。 |
14.14。 | invoke() each()またはcollect()の一般的なユースケースの最適化:すべての要素に対して、同じ潜在的な引数を使用して同じメソッドを呼び出します。 |
15.15。 | 地図() 各要素にイテレータを適用した結果を返します。collect()の便利なエイリアス。 |
16.16。 | max() 最大要素(または要素ベースの計算)を返します。列挙が空の場合は未定義を返します。要素は直接比較されるか、最初にイテレータを適用して戻り値を比較することによって比較されます。 |
17.17。 | メンバー() ==比較演算子に基づいて、指定されたオブジェクトがEnumerableにあるかどうかを判別します。include()の便利なエイリアス。 |
18.18。 | min() 最小要素(または要素ベースの計算)を返します。列挙が空の場合は未定義を返します。要素は直接比較されるか、最初にイテレータを適用して戻り値を比較することによって比較されます。 |
19。 | パーティション() 要素を2つのグループに分割します。trueと見なされるグループとfalseと見なされるグループです。 |
20。 | pluck() collect()の一般的なユースケースの最適化:すべての要素に対して同じプロパティをフェッチします。プロパティ値を返します。 |
21。 | react() イテレータがfalseを返したすべての要素を返します。 |
22。 | 選択する() findAll()メソッドのエイリアス。 |
23。 | サイズ() 列挙のサイズを返します。 |
24。 | 並び替え() イテレータによって要素ごとに計算された基準に基づいて、要素のカスタムソートされたビューを提供します。 |
25。 | toArray() 列挙の配列表現を返します。別名entries()。 |
26。 | zip() 一緒にジッパー(ズボンのペアのジッパーを考えてください)2 +シーケンス、タプルの配列を提供します。各タプルには、元のシーケンスごとに1つの値が含まれます。 |