Ermöglicht das Suchen eines oder mehrerer Werte in einer Liste oder Datenprovider.
HINWEIS Handelt es sich bei der Quelle um einen Datenprovider, so können nur die bereits geladenen Einträge durchsucht werden. Es werden keine Server seitigen Suchen ausgeführt!Tooltip
Syntax:
$findFirst(source,boolExpression)
$findAll(source,boolExpression)
Parameter
Beschreibung
sourceDie Liste oder der Datenprovider der durchsucht werden soll
boolExpressionEin Ausdruck, welcher für jeden Eintrag in source gerufen wird. Das Eingabeobjekt ($input) ist dabei der jeweilige Eintrag.
Der Ausdruck muss einen bool'schen Wert zurückliefern, welcher darüber entscheidet, ob der Eintrag in das Suchergebnis passt (true) oder nicht (false)Im Falle von $findFirst wird der Eintrag zurückgeliefert, der als erster der Sucheinschränkung entsprach.
Im Falle von $findAll wird eine Liste mit allen Einträgen zurückgeliefert, welche der Sucheinschränkung entsprochen haben.Beispiel: $findFirst($input,$cmp({key},=,5)) - Liefert den ersten Eintrag dessen Feld "key" den Wert 5 besitzt
Siehe auch contains (prüfen ob Wert in Liste enthalten ist)
Syntax
$findFirst(source,boolExpression)
$findAll(source,boolExpression)
Parameter
Name | Beschreibung |
|---|---|
source | Die Liste oder der Datenprovider der durchsucht werden soll |
boolExpression | Ein Ausdruck, welcher für jeden Eintrag in source gerufen wird. Das Eingabeobjekt ($input) ist dabei der jeweilige Eintrag. Tipp: Die Variable "orgInput" (zugreifbar über $var(orgInput)) enthält das originale Eingabeobjekt auf Ebene der $findXXX Funktion. |
Rückgabewert
Im Falle von $findFirst wird der Eintrag zurückgeliefert, der als erster der Sucheinschränkung entsprach.
Im Falle von $findAll wird eine Liste mit allen Einträgen zurückgeliefert, welche der Sucheinschränkung entsprochen haben.
Beispiele:
Für die Beispiele wird angenommen, dass es sich bei $input um eine Liste mit Tupeln folgenden Formats handelt:
JSON
[
{
"key": "1",
"label": "Item 1",
"value": 220
},
{
"key": "2",
"label": "Item 2",
"value": 95
},
{
"key": "3",
"label": "Item 3",
"value": 100
},
{
"key": "4",
"label": "Item 4",
"value": 10
},
{
"key": "5",
"label": "Item 5",
"value": 5
}
]
Ausdruck | Ergebnis | Wirkung |
|---|---|---|
$findFirst($input,$cmp({key},=,4)) | Eintrag "Item 4" | Liefert den Eintrag dessen Feld "key" den Wert "4" hat |
$findAll($input,$cmp({value},>=,100,n)) | Liste mit "Item1" und "Item 3" | Liefert alle Einträge der Liste, deren Feld "value" einen Wert größer oder gleich 100 hat |
$findFirst($el(8,true),$cmp({value},=,$var(orgInput))) | Der Eintrag, dessen value Feld dem originalen Eingabewert entspricht | $el(8,true) liefert sämtliche Werte aller Wiederholungen des Elements mit ID 8. |