Funkce kolekce CreateUiDefinition
Tyto funkce lze použít s kolekcemi, jako jsou řetězce JSON, pole a objekty.
obsahuje
Vrátí true
, pokud řetězec obsahuje zadaný podřetězec, matice obsahuje zadanou hodnotu nebo objekt obsahuje zadaný klíč.
Příklad: řetězec obsahuje
Následující příklad vrátí true
:
"[contains('webapp', 'web')]"
Příklad: pole obsahuje
Předpokládejme element1
, že vrátí [1, 2, 3]
. Následující příklad vrátí false
:
"[contains(steps('demoStep').element1, 4)]"
Příklad: objekt obsahuje
Předpokládejme element1
, že vrátí:
{
"key1": "Linux",
"key2": "Windows"
}
Následující příklad vrátí true
:
"[contains(steps('demoStep').element1, 'key1')]"
empty
Vrátí true
, pokud je řetězec, matice nebo objekt null nebo prázdný.
Příklad: řetězec prázdný
Následující příklad vrátí true
:
"[empty('')]"
Příklad: prázdné pole
Předpokládejme element1
, že vrátí [1, 2, 3]
. Následující příklad vrátí false
:
"[empty(steps('demoStep').element1)]"
Příklad: prázdný objekt
Předpokládejme element1
, že vrátí:
{
"key1": "Linux",
"key2": "Windows"
}
Následující příklad vrátí false
:
"[empty(steps('demoStep').element1)]"
Příklad: null a nedefinováno
Předpokládejme element1
, že je null
nebo není definována. Následující příklad vrátí true
:
"[empty(steps('demoStep').element1)]"
filter
Vrátí nové pole po použití logiky filtrování poskytnuté jako funkce lambda. Prvním parametrem je pole, které se má použít k filtrování. Druhým parametrem je funkce lambda, která určuje logiku filtrování.
Následující ukázka vrátí matici [ { "name": "abc" } ]
.
"[filter(parse('[{\"name\":\"abc\"},{\"name\":\"xyz\"}]'), (item) => contains(item.name, 'abc'))]"
1\.
Vrátí první znak zadaného řetězce; první hodnota zadané matice; nebo první klíč a hodnota zadaného objektu.
Příklad: první řetězec
Následující příklad vrátí "c"
:
"[first('contoso')]"
Příklad: první pole
Předpokládejme element1
, že vrátí [1, 2, 3]
. Následující příklad vrátí 1
:
"[first(steps('demoStep').element1)]"
Příklad: první objekt
Předpokládejme element1
, že vrátí:
{
"key1": "Linux",
"key2": "Windows"
}
Následující příklad vrátí {"key1": "Linux"}
:
"[first(steps('demoStep').element1)]"
Poslední
Vrátí poslední znak zadaného řetězce, poslední hodnotu zadaného pole nebo poslední klíč a hodnotu zadaného objektu.
Příklad: poslední řetězec
Následující příklad vrátí "o"
:
"[last('contoso')]"
Příklad: poslední pole
Předpokládejme element1
, že vrátí [1, 2, 3]
. Následující příklad vrátí 3
:
"[last(steps('demoStep').element1)]"
Příklad: poslední objekt
Předpokládejme element1
, že vrátí:
{
"key1": "Linux",
"key2": "Windows"
}
Následující příklad vrátí {"key2": "Windows"}
:
"[last(steps('demoStep').element1)]"
length
Vrátí počet znaků v řetězci, počet hodnot v poli nebo počet klíčů v objektu.
Příklad: délka řetězce
Následující příklad vrátí 7
:
"[length('Contoso')]"
Příklad: délka pole
Předpokládejme element1
, že vrátí [1, 2, 3]
. Následující příklad vrátí 3
:
"[length(steps('demoStep').element1)]"
Příklad: délka objektu
Předpokládejme element1
, že vrátí:
{
"key1": "Linux",
"key2": "Windows"
}
Následující příklad vrátí 2
:
"[length(steps('demoStep').element1)]"
map
Vrátí nové pole po volání funkce lambda pro zadané pole. Prvním parametrem je pole, které se má použít pro funkci lambda. Druhým parametrem je funkce lambda.
Následující ukázka vrátí novou matici s každou hodnotou zdvojnásobenou. Výsledek je [2, 4, 6]
.
"[map(parse('[1, 2, 3]'), (item) => mul(2, item))]"
Následující ukázka vrátí novou matici ["abc", "xyz"]
.
"[map(parse('[{\"name\":\"abc\"},{\"name\":\"xyz\"}]'), (item) => item.name)]"
skip
Obchází zadaný počet prvků v kolekci a vrátí zbývající prvky.
Příklad: přeskočení řetězce
Následující příklad vrátí "app"
:
"[skip('webapp', 3)]"
Příklad: přeskočení pole
Předpokládejme element1
, že vrátí [1, 2, 3]
. Následující příklad vrátí [3]
:
"[skip(steps('demoStep').element1, 2)]"
Příklad: přeskočení objektu
Předpokládejme element1
, že vrátí:
{
"key1": "Linux",
"key2": "Windows"
}
Následující příklad vrátí {"key2": "Windows"}
:
"[skip(steps('demoStep').element1, 1)]"
split
Vrátí pole řetězců obsahující podřetězce vstupu odděleného oddělovačem.
Následující ukázka vrátí matici [ "555", "867", "5309" ]
.
"[split('555-867-5309', '-')]"
take
Vrátí zadaný počet souvislých znaků od začátku řetězce, zadaný počet souvislých hodnot od začátku pole nebo zadaný počet souvislých klíčů a hodnot od začátku objektu.
Příklad: převzetí řetězce
Následující příklad vrátí "web"
:
"[take('webapp', 3)]"
Příklad: převzetí pole
Předpokládejme element1
, že vrátí [1, 2, 3]
. Následující příklad vrátí [1, 2]
:
"[take(steps('demoStep').element1, 2)]"
Příklad: převzetí objektu
Předpokládejme element1
, že vrátí:
{
"key1": "Linux",
"key2": "Windows"
}
Následující příklad vrátí {"key1": "Linux"}
:
"[take(steps('demoStep').element1, 1)]"