ここは旧式の4DドキュメントWebサイトです。最新のアップデートされたドキュメントを読むには新サイトをご利用下さい→ developer.4d.com |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v20 R7
Copy parameters
|
Copy parameters {( startFrom )} -> 戻り値 | ||||||||
引数 | 型 | 説明 | ||||||
startFrom | 倍長整数 |
![]() |
開始インデックス(指定した引数含む) | |||||
戻り値 | コレクション |
![]() |
実際に渡された引数を格納した新しいコレクション | |||||
Copy parameters コマンドは、メソッドまたは関数に実際に渡された全ての引数を格納したコレクションを返します。このコマンドはある関数またはメソッドから、また別の関数またはメソッドへと、不定数の引数を転送したい場合に有用です。
最初に引数に応じて呼び出す関数を変え、その関数へと2番目以降の引数を渡す場合を考えます:
Function selectTask($task Text)
Case of
:($task="Task1")
This.task1(Copy parameters(2))
:($task="Task2")
This.task2(Copy parameters(2))
End case
または、別のオブジェクトに対して他の関数を apply() で呼び出し、引数を渡す場合を考えます:
Function doSomething($param Text;$extraParameters Variant)
This.delegate.doSomething.apply(This.delegate;Copy parameters)
コマンドはコレクションを返すため、 .join() と組み合わせて使用することで例えば html リストをビルドすることができます:
// Class
Function list($typeText)->Text
//リストのタイプは"u" または "o"
var $value : Collection
$value:=Copy parameters(2)
$html:="<"+$type+"l><li>"
$html+=$value.join("</li><li>")
$html+="</li></"+$type+"l>"
return$html
// 呼び出しMethod
$htmlList:=$c.list("u";"Alpha";"Bravo";"Charlie")
// $htmlList = <ul><li>Alpha</li><li>Bravo</li><li>Charlie</li></ul>
プロダクト: 4D
テーマ: ランゲージ
番号:
1790
初出: 4D v19 R5
ランゲージリファレンス ( 4D v20 R7)