Prototype-enumerating
プロトタイプ-列挙
列挙可能なクラスは、列挙に役立つ多数の便利なメソッドを提供します。 列挙は、値のコレクションとして機能するオブジェクトです。
列挙メソッドは、主に_arrays_と_hashes_を列挙するために使用されます。 _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/select_メソッドは、指定された述語に一致するすべての要素を取得します。 逆に、_reject()_メソッドは、述語と一致しないすべての要素を取得します。 両方のセットが必要な特定のケースでは、2回のループを避けることができます:_partition()_メソッドを使用するだけです。
以下は、Enumerableに関連するすべてのメソッドの完全なリストです。
プロトタイプ列挙可能メソッド
注-少なくともprototype.jsのバージョン1.6を使用していることを確認してください。
S.No. | Method & Description |
---|---|
1. |
すべての要素がブール値と真であるかどうかを、直接または指定された反復子による計算によって決定します。 |
2. |
少なくとも1つの要素がブール値と真であるかどうかを、直接または指定された反復子による計算によって決定します。 |
3. |
反復子を各要素に適用した結果を返します。 map()としてエイリアスされます。 |
4. |
反復子がtrueを返す最初の要素を見つけます。 find()メソッドによってエイリアスされます。 |
5. |
これにより、すべての要素を一般的な方法で繰り返し処理し、Enumerableを返すことで、チェーン呼び出しが可能になります。 |
6. |
指定されたサイズに基づいてアイテムをチャンクにグループ化します。最後のチャンクはより小さくなる可能性があります。 |
7. |
より汎用的なtoArrayメソッドのエイリアス。 |
8. |
反復子がtrueを返す最初の要素を見つけます。 detect()の便利なエイリアス。 |
9. |
反復子がtrueを返したすべての要素を返します。 select()としてエイリアスされます。 |
10. |
フィルターに一致するすべての要素を返します。 反復子が提供されている場合は、選択された各要素の戻り値を生成するために使用されます。 |
11. |
必要に応じて特定の値を使用して最後のチャンクを埋め、固定サイズのチャンクでアイテムをグループ化します。 |
12. |
==比較演算子に基づいて、指定されたオブジェクトがEnumerableにあるかどうかを決定します。 member()としてエイリアスされます。 |
13. |
反復子の連続した結果に基づいて、結果値を増分的に構築します。 |
14. |
each()またはcollect()の一般的なユースケースの最適化:すべての要素に対して、同じ潜在的な引数を使用して同じメソッドを呼び出します。 |
15. |
反復子を各要素に適用した結果を返します。 collect()の便利なエイリアス。 |
16. |
最大要素(または要素ベースの計算)を返します。列挙が空の場合はundefinedを返します。 要素は直接比較されるか、最初にイテレータを適用して戻り値を比較することにより比較されます。 |
17. |
==比較演算子に基づいて、指定されたオブジェクトがEnumerableにあるかどうかを決定します。 include()の便利なエイリアス。 |
18. |
最小要素(または要素ベースの計算)を返します。列挙が空の場合はundefinedを返します。 要素は直接比較されるか、最初にイテレータを適用して戻り値を比較することにより比較されます。 |
19. |
要素を2つのグループに分割します:trueと見なされるグループとfalseと見なされるグループ。 |
20. |
collect()の一般的なユースケースの最適化:すべての要素に対して同じプロパティを取得します。 プロパティ値を返します。 |
21. |
イテレータがfalseを返したすべての要素を返します。 |
22. |
findAll()メソッドのエイリアス。 |
23. |
列挙のサイズを返します。 |
24. |
イテレータによって要素ごとに計算された基準に基づいて、要素のカスタムソートされたビューを提供します。 |
25. |
列挙の配列表現を返します。 entries()としてエイリアスされます。 |
26. |
一緒にジッパー(ズボンのジッパーを考えてください)2+タプルの配列を提供するシーケンス。 各タプルには、元のシーケンスごとに1つの値が含まれます。 |