ここは旧式の4DドキュメントWebサイトです。最新のアップデートされたドキュメントを読むには新サイトをご利用下さい→ developer.4d.com |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v19.8
collection.every( )
|
collection.every ( {startFrom ;} methodName {; param {; param2 ; ... ; paramN}} ) -> 戻り値 | ||||||||
引数 | 型 | 説明 | ||||||
startFrom | 倍長整数 |
![]() |
テストを開始するインデックス | |||||
methodName | テキスト |
![]() |
テストに呼び出すファンクション名 | |||||
param | 式 |
![]() |
methodNameに渡す引数 | |||||
戻り値 | ブール |
![]() |
全ての要素がテストをパスすればTrue | |||||
collection.every( ) ファンクションは、コレクション内の全ての要素が、methodName 引数で指定された関数で実装されたテストにパスした場合にはtrue を返します。
デフォルトでは、collection.every( ) はコレクション全体をテストします。オプションとして、startFrom 引数を使用してテストを開始する要素のインデックスを渡すこともできます。
methodName 引数には、コレクションの要素を評価するのに使用するメソッド名を渡します。必要であればparam 引数に必要な引数を渡します(任意)。methodName で指定したメソッドはどんなテストでも実行でき、引数はあってもなくても構いません。このメソッドは$1にObject 引数を受け取り、テストをパスした要素の$1.result をtrue に設定しなければなりません。
methodName で指定したメソッドは以下の引数を受け取ります:
methodName で指定したメソッドは以下の引数を設定しいます:
どの場合においても、collection.every( ) ファンクションが$1.result にfalse を返すコレクションの要素を発見した場合、ファンクションはmethodName のメソッドの呼び出しをやめ、false を返します。
C_COLLECTION($c)
$c:=New collection
$c.push(5;3;1;4;6;2)
$b:=$c.every("NumberGreaterThan0") //trueを返す
$c.push(-1)
$b:=$c.every("NumberGreaterThan0") //falseを返す
NumberGreaterThan0 メソッドの中身は以下のようになります:
$1.result:=$1.value>0
以下の例はコレクションの全ての要素が実数型であるかをテストします:
C_COLLECTION($c)
$c:=New collection
$c.push(5;3;1;4;6;2)
$b:=$c.every("TypeLookUp";Is real) //$b=true
$c:=$c.push(New object("name";"Cleveland";"zc";35049))
$c:=$c.push(New object("name";"Blountsville";"zc";35031))
$b:=$c.every("TypeLookUp";Is real) //$b=false
TypeLookUp メソッドの中身は以下のようになります:
C_OBJECT($1)
C_LONGINT($2)
If(Value type($1.value)=$2)
$1.result:=True
End if
プロダクト: 4D
テーマ: コレクション
番号:
705246
初出: 4D v16 R6
ランゲージリファレンス ( 4D v19)
ランゲージリファレンス ( 4D v19.1)
ランゲージリファレンス ( 4D v19.4)
ランゲージリファレンス ( 4D v19.5)
ランゲージリファレンス ( 4D v19.6)
ランゲージリファレンス ( 4D v19.7)
ランゲージリファレンス ( 4D v19.8)