Dies ist die alte 4D Dokumentations-Website. Die neue und aktualisierte Dokumentation finden Sie unter developer.4d.com |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v20 R7
Copy parameters
|
Copy parameters {( startFrom )} -> Funktionsergebnis | ||||||||
Parameter | Typ | Beschreibung | ||||||
startFrom | Lange Ganzzahl |
![]() |
Starting index (included) | |||||
Funktionsergebnis | Collection |
![]() |
New collection containing parameters actually passed | |||||
Der Befehl Copy parameters gibt eine neue Collection zurück, die alle Parameter enthält, die tatsächlich an eine Methode oder eine Funktion übergeben wurden. Dieser Befehl ist nützlich, wenn Sie eine bestimmte Anzahl von Parametern von einer Methode oder Funktion an eine andere Methode oder Funktion weitergeben müssen.
Im optionalen Parameter startFrom können Sie den Index des Parameters übergeben, ab dem die Collection von Parametern zur Weiterleitung beginnen soll. Der Parameter startFrom selbst ist enthalten.
Beim Aufruf innerhalb einer Formel gibt Copy parameters die Parameter zurück, die explizit mit apply() oder call() übergeben wurden (und nicht die, die an die übergeordnete Methode oder Funktion übergeben wurden).
Copy parameters gibt eine leere Collection zurück, wenn:
Aufruf einer anderen Funktion in Abhängigkeit vom ersten Parameter und Übergabe anderer Parameter an diese Funktion:
Function selectTask($task Text)
Case of
:($task="Task1")
This.task1(Copy parameters(2))
:($task="Task2")
This.task2(Copy parameters(2))
End case
Oder Sie rufen eine andere Funktion auf einem anderen Objekt mit apply() auf und übergeben die Parameter:
Function doSomething($param Text;$extraParameters Variant)
This.delegate.doSomething.apply(This.delegate;Copy parameters)
Da der Befehl eine Collection zurückgibt, kann er mit .join() verwendet werden, um z.B. eine html-Liste zu erstellen:
// Class
Function list($typeText)->Text
//type of list is "u" or "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>
Produkt: 4D
Thema: Programmiersprache
Nummer:
1790
Erstellt: 4D v19 R5
4D Programmiersprache ( 4D v20 R7)