ここは旧式の4DドキュメントWebサイトです。最新のアップデートされたドキュメントを読むには新サイトをご利用下さい→ developer.4d.com

ホーム

 
4D v19.8
collection.every( )

collection.every( ) 


 

collection.every ( {startFrom ;} methodName {; param {; param2 ; ... ; paramN}} ) -> 戻り値 
引数   説明
startFrom  倍長整数 in テストを開始するインデックス
methodName  テキスト in テストに呼び出すファンクション名
param  in methodNameに渡す引数
戻り値  ブール in 全ての要素がテストをパスすればTrue

説明   

collection.every( ) ファンクションは、コレクション内の全ての要素が、methodName 引数で指定された関数で実装されたテストにパスした場合にはtrue を返します。

デフォルトでは、collection.every( ) はコレクション全体をテストします。オプションとして、startFrom 引数を使用してテストを開始する要素のインデックスを渡すこともできます。

  • startFrom がコレクションのlength 以上だった場合、false が返されます。これはコレクションがテストされていないことを意味します。
  • startFrom が負の値(0未満)だった場合、それはコレクションの終わりからのオフセットであるとみなされます(startFrom:=startFrom+length)。
  • startFrom が0だった場合、コレクション全体がテストされます(デフォルト)。

methodName 引数には、コレクションの要素を評価するのに使用するメソッド名を渡します。必要であればparam 引数に必要な引数を渡します(任意)。methodName で指定したメソッドはどんなテストでも実行でき、引数はあってもなくても構いません。このメソッドは$1にObject 引数を受け取り、テストをパスした要素の$1.resulttrue に設定しなければなりません。

methodName で指定したメソッドは以下の引数を受け取ります:

  • $1.value: 評価する要素の値
  • $2: param
  • $N...: param2...paramN

methodName で指定したメソッドは以下の引数を設定しいます:

  • $1.result (ブール): 要素の値の評価が全て成功した場合にはtrue 、それ以外の場合にはfalse
  • $1.stop (ブール、任意): メソッドコールバックを止める場合にはtrue。返された値は最後に計算されたものです。

どの場合においても、collection.every( ) ファンクションが$1.resultfalse を返すコレクションの要素を発見した場合、ファンクションは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



参照 

collection.some( )

 
プロパティ 

プロダクト: 4D
テーマ: コレクション
番号: 705246

This command can be run in preemptive processes

 
ページの目次 
 
履歴 

初出: 4D v16 R6

 
ARTICLE USAGE

ランゲージリファレンス ( 4D v19)
ランゲージリファレンス ( 4D v19.1)
ランゲージリファレンス ( 4D v19.4)
ランゲージリファレンス ( 4D v19.5)
ランゲージリファレンス ( 4D v19.6)
ランゲージリファレンス ( 4D v19.7)
ランゲージリファレンス ( 4D v19.8)