Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Tento článek popisuje funkce šablon pro práci s poli.
Pokud chcete získat pole řetězcových hodnot oddělených hodnotou, podívejte se na rozdělení.
Návod
Bicep se doporučuje, protože nabízí stejné možnosti jako šablony ARM a syntaxe se snadněji používá. Další informace najdete v tématu array funkce.
pole
array(convertToArray)
Převede hodnotu na pole.
V Bicep použijte array funkci.
Parametry
| Parametr | Požaduje se | Typ | Popis |
|---|---|---|---|
| convertToArray | Ano | int, string, array nebo object | Hodnota, která se má převést na pole. |
Vrácená hodnota
Pole.
Příklad
Následující příklad ukazuje, jak používat array funkci s různými typy:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"intToConvert": {
"type": "int",
"defaultValue": 1
},
"stringToConvert": {
"type": "string",
"defaultValue": "efgh"
},
"objectToConvert": {
"type": "object",
"defaultValue": {
"a": "b",
"c": "d"
}
}
},
"resources": [
],
"outputs": {
"intOutput": {
"type": "array",
"value": "[array(parameters('intToConvert'))]"
},
"stringOutput": {
"type": "array",
"value": "[array(parameters('stringToConvert'))]"
},
"objectOutput": {
"type": "array",
"value": "[array(parameters('objectToConvert'))]"
}
}
}
Výstup výchozích hodnot z předchozího příkladu je:
| Název | Typ | Hodnota |
|---|---|---|
| intOutput | Pole | [1] |
| stringOutput | Pole | ["eryth"] |
| objectOutput | Pole | [{"a": "b", "c": "d"}] |
concat
concat(arg1, arg2, arg3, ...)
Kombinuje více polí a vrací zřetězenou matici nebo kombinuje více řetězcových hodnot a vrací zřetězený řetězec.
V Bicep použijte concat funkci.
Parametry
| Parametr | Požaduje se | Typ | Popis |
|---|---|---|---|
| arg1 řekl: | Ano | pole nebo řetězec | První pole nebo řetězec pro zřetězení. |
| další argumenty | Ne | pole nebo řetězec | Více polí nebo řetězců v sekvenčním pořadí pro zřetězení |
Tato funkce může přijmout libovolný počet argumentů a pro parametry může přijímat řetězce nebo pole. Pro parametry ale nemůžete zadat pole i řetězce. Pole jsou zřetězena pouze s jinými poli.
Vrácená hodnota
Řetězec nebo pole zřetězených hodnot.
Příklad
Následující příklad ukazuje, jak kombinovat dvě pole:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"firstArray": {
"type": "array",
"defaultValue": [
"1-1",
"1-2",
"1-3"
]
},
"secondArray": {
"type": "array",
"defaultValue": [
"2-1",
"2-2",
"2-3"
]
}
},
"resources": [
],
"outputs": {
"return": {
"type": "array",
"value": "[concat(parameters('firstArray'), parameters('secondArray'))]"
}
}
}
Výstup výchozích hodnot z předchozího příkladu je:
| Název | Typ | Hodnota |
|---|---|---|
| vrátit | Pole | ["1-1", "1-2", "1-3", "2-1", "2-2", "2-3"] |
Následující příklad ukazuje, jak zkombinovat dvě řetězcové hodnoty a vrátit zřetězený řetězec:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"prefix": {
"type": "string",
"defaultValue": "prefix"
}
},
"resources": [],
"outputs": {
"concatOutput": {
"type": "string",
"value": "[concat(parameters('prefix'), '-', uniqueString(resourceGroup().id))]"
}
}
}
Výstup výchozích hodnot z předchozího příkladu je:
| Název | Typ | Hodnota |
|---|---|---|
| concatOutput | Řetězec | prefix-5yj4yjf5mbg72 |
obsahuje
contains(container, itemToFind)
Zkontroluje, jestli pole obsahuje hodnotu, objekt obsahuje klíč nebo řetězec obsahuje podřetězce. Porovnání řetězců se rozlišují malá a velká písmena. Při testování, pokud objekt obsahuje klíč, je však porovnání nerozlišující malá a velká písmena.
V Bicep použijte contains funkci.
Parametry
| Parametr | Požaduje se | Typ | Popis |
|---|---|---|---|
| kontejner | Ano | pole, objekt nebo řetězec | Hodnota, která obsahuje hodnotu, kterou chcete najít. |
| itemToFind | Ano | řetězec nebo int | Hodnota, kterou chcete najít. |
Vrácená hodnota
Hodnota True , pokud je položka nalezena; v opačném případě false.
Příklad
Následující příklad ukazuje, jak se používá contains s různými typy:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"stringToTest": {
"type": "string",
"defaultValue": "OneTwoThree"
},
"objectToTest": {
"type": "object",
"defaultValue": {
"one": "a",
"two": "b",
"three": "c"
}
},
"arrayToTest": {
"type": "array",
"defaultValue": [ "one", "two", "three" ]
}
},
"resources": [
],
"outputs": {
"stringTrue": {
"type": "bool",
"value": "[contains(parameters('stringToTest'), 'e')]"
},
"stringFalse": {
"type": "bool",
"value": "[contains(parameters('stringToTest'), 'z')]"
},
"objectTrue": {
"type": "bool",
"value": "[contains(parameters('objectToTest'), 'one')]"
},
"objectFalse": {
"type": "bool",
"value": "[contains(parameters('objectToTest'), 'a')]"
},
"arrayTrue": {
"type": "bool",
"value": "[contains(parameters('arrayToTest'), 'three')]"
},
"arrayFalse": {
"type": "bool",
"value": "[contains(parameters('arrayToTest'), 'four')]"
}
}
}
Výstup výchozích hodnot z předchozího příkladu je:
| Název | Typ | Hodnota |
|---|---|---|
| stringTrue | Booleovská hodnota | Pravdivé |
| stringFalse | Booleovská hodnota | Nepravda |
| objectTrue | Booleovská hodnota | Pravdivé |
| objectFalse | Booleovská hodnota | Nepravda |
| arrayTrue | Booleovská hodnota | Pravdivé |
| arrayFalse | Booleovská hodnota | Nepravda |
createArray
createArray(arg1, arg2, arg3, ...)
Vytvoří z parametrů pole.
V Bicep createArray není funkce podporovaná. Pokud chcete vytvořit pole, podívejte se na datový typ pole Bicep.
Parametry
| Parametr | Požaduje se | Typ | Popis |
|---|---|---|---|
| argumenty | Ne | String, Integer, Array nebo Object | Hodnoty v poli. |
Vrácená hodnota
Pole. Pokud nejsou zadané žádné parametry, vrátí prázdné pole.
Příklad
Následující příklad ukazuje, jak se používá createArray s různými typy:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"objectToTest": {
"type": "object",
"defaultValue": {
"one": "a",
"two": "b",
"three": "c"
}
},
"arrayToTest": {
"type": "array",
"defaultValue": [ "one", "two", "three" ]
}
},
"resources": [
],
"outputs": {
"stringArray": {
"type": "array",
"value": "[createArray('a', 'b', 'c')]"
},
"intArray": {
"type": "array",
"value": "[createArray(1, 2, 3)]"
},
"objectArray": {
"type": "array",
"value": "[createArray(parameters('objectToTest'))]"
},
"arrayArray": {
"type": "array",
"value": "[createArray(parameters('arrayToTest'))]"
},
"emptyArray": {
"type": "array",
"value": "[createArray()]"
}
}
}
Výstup výchozích hodnot z předchozího příkladu je:
| Název | Typ | Hodnota |
|---|---|---|
| stringArray | Pole | ["a", "b", "c"] |
| intArray | Pole | [1, 2, 3] |
| objectArray | Pole | [{"one": "a", "two": "b", "three": "c"}] |
| arrayArray | Pole | [["one", "two", "three"]] |
| emptyArray | Pole | [] |
prázdný
empty(itemToTest)
Určuje, zda je pole, objekt nebo řetězec prázdné.
V Bicep použijte empty funkci.
Parametry
| Parametr | Požaduje se | Typ | Popis |
|---|---|---|---|
| itemToTest | Ano | pole, objekt nebo řetězec | Hodnota, která se má zkontrolovat, jestli je prázdná. |
Vrácená hodnota
Vrátí hodnotu True , pokud je hodnota prázdná. V opačném případě vrátí hodnotu False.
Příklad
Následující příklad zkontroluje, jestli pole, objekt a řetězec jsou prázdné:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"testArray": {
"type": "array",
"defaultValue": []
},
"testObject": {
"type": "object",
"defaultValue": {}
},
"testString": {
"type": "string",
"defaultValue": ""
}
},
"resources": [
],
"outputs": {
"arrayEmpty": {
"type": "bool",
"value": "[empty(parameters('testArray'))]"
},
"objectEmpty": {
"type": "bool",
"value": "[empty(parameters('testObject'))]"
},
"stringEmpty": {
"type": "bool",
"value": "[empty(parameters('testString'))]"
}
}
}
Výstup výchozích hodnot z předchozího příkladu je:
| Název | Typ | Hodnota |
|---|---|---|
| arrayEmpty | Booleovská hodnota | Pravdivé |
| objectEmpty | Booleovská hodnota | Pravdivé |
| stringEmpty | Booleovská hodnota | Pravdivé |
1\.
first(arg1)
Vrátí první prvek pole nebo první znak řetězce.
V Bicep použijte first funkci.
Parametry
| Parametr | Požaduje se | Typ | Popis |
|---|---|---|---|
| arg1 řekl: | Ano | pole nebo řetězec | Hodnota pro načtení prvního prvku nebo znaku. |
Vrácená hodnota
Typ (řetězec, int, matice nebo objekt) prvního prvku v matici nebo prvního znaku řetězce.
Příklad
Následující příklad ukazuje, jak použít first funkci s polem a řetězcem:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"arrayToTest": {
"type": "array",
"defaultValue": [ "one", "two", "three" ]
}
},
"resources": [
],
"outputs": {
"arrayOutput": {
"type": "string",
"value": "[first(parameters('arrayToTest'))]"
},
"stringOutput": {
"type": "string",
"value": "[first('One Two Three')]"
}
}
}
Výstup výchozích hodnot z předchozího příkladu je:
| Název | Typ | Hodnota |
|---|---|---|
| arrayOutput | Řetězec | jeden |
| stringOutput | Řetězec | O |
indexFromEnd
indexFromEnd(sourceArray, reverseIndex)
Vrátí prvek pole počítáním zpět od konce. To je užitečné, když chcete odkazovat na prvky začínající od konce seznamu, nikoli od začátku. Funkce tryIndexFromEnd je bezpečná verze indexFromEnd.
V Bicep použijte operátor reserved index accessor .
Parametry
| Parametr | Požaduje se | Typ | Popis |
|---|---|---|---|
| sourceArray | Ano | pole | Hodnota pro načtení prvku počítáním zpět od konce. |
| reverseIndex | Ano | integer | Index založený na jednom z konce pole. |
Vrácená hodnota
Jeden prvek z pole, vybraný počítáním zpět od konce pole.
Příklad
Následující příklad ukazuje, jak používat indexFromEnd funkci:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"variables": {
"items": [
"apple",
"banana",
"orange",
"grape"
]
},
"resources": [],
"outputs": {
"secondToLast": {
"type": "string",
"value": "[indexFromEnd(variables('items'), 2)]"
}
}
}
Výstup výchozích hodnot z předchozího příkladu je:
| Název | Typ | Hodnota |
|---|---|---|
| secondToLast | Řetězec | oranžová |
Bez úprav; "indexOf" zůstává jako součást názvů a terminologie v oblasti programování.
indexOf(arrayToSearch, itemToFind)
Vrátí celé číslo pro index prvního výskytu položky v poli. V porovnání se u řetězců rozlišují malá a velká písmena .
Parametry
| Parametr | Požaduje se | Typ | Popis |
|---|---|---|---|
| arrayToSearch | Ano | pole | Pole, které se má použít k vyhledání indexu hledané položky. |
| itemToFind | Ano | int, string, array nebo object | Položka, kterou chcete najít v poli. |
Vrácená hodnota
Celé číslo představující první index položky v poli. Index je založený na nule. Pokud se položka nenajde, vrátí se hodnota -1.
Příklady
Následující příklad ukazuje, jak používat funkce indexOflastIndexOf :
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"variables": {
"names": [
"one",
"two",
"three"
],
"numbers": [
4,
5,
6
],
"collection": [
"[variables('names')]",
"[variables('numbers')]"
],
"duplicates": [
1,
2,
3,
1
]
},
"resources": [],
"outputs": {
"index1": {
"type": "int",
"value": "[lastIndexOf(variables('names'), 'two')]"
},
"index2": {
"type": "int",
"value": "[indexOf(variables('names'), 'one')]"
},
"notFoundIndex1": {
"type": "int",
"value": "[lastIndexOf(variables('names'), 'Three')]"
},
"index3": {
"type": "int",
"value": "[lastIndexOf(variables('numbers'), 4)]"
},
"index4": {
"type": "int",
"value": "[indexOf(variables('numbers'), 6)]"
},
"notFoundIndex2": {
"type": "int",
"value": "[lastIndexOf(variables('numbers'), '5')]"
},
"index5": {
"type": "int",
"value": "[indexOf(variables('collection'), variables('numbers'))]"
},
"index6": {
"type": "int",
"value": "[indexOf(variables('duplicates'), 1)]"
},
"index7": {
"type": "int",
"value": "[lastIndexOf(variables('duplicates'), 1)]"
}
}
}
Výstup z předchozího příkladu je:
| Název | Typ | Hodnota |
|---|---|---|
| index1 | int (integer) | 0 |
| index2 | int (integer) | 0 |
| index3 | int (integer) | 0 |
| index4 | int (integer) | 2 |
| index5 | int (integer) | 0 |
| index6 | int (integer) | 0 |
| index7 | int (integer) | 3 |
| notFoundIndex1 | int (integer) | -1 |
| notFoundIndex2 | int (integer) | -1 |
křižovatka
intersection(arg1, arg2, arg3, ...)
Vrátí jedno pole nebo objekt se společnými prvky z parametrů.
V Bicep použijte intersection funkci.
Parametry
| Parametr | Požaduje se | Typ | Popis |
|---|---|---|---|
| arg1 řekl: | Ano | pole nebo objekt | První hodnota, která se má použít k vyhledání společných prvků. |
| arg2 | Ano | pole nebo objekt | Druhá hodnota, která se má použít k vyhledání společných prvků. |
| další argumenty | Ne | pole nebo objekt | Další hodnoty, které se mají použít k vyhledání běžných prvků. |
Vrácená hodnota
Pole nebo objekt se společnými prvky.
Příklad
Následující příklad ukazuje použití intersection s poli a objekty:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"firstObject": {
"type": "object",
"defaultValue": {
"one": "a",
"two": "b",
"three": "c"
}
},
"secondObject": {
"type": "object",
"defaultValue": {
"one": "a",
"two": "z",
"three": "c"
}
},
"firstArray": {
"type": "array",
"defaultValue": [ "one", "two", "three" ]
},
"secondArray": {
"type": "array",
"defaultValue": [ "two", "three" ]
}
},
"resources": [
],
"outputs": {
"objectOutput": {
"type": "object",
"value": "[intersection(parameters('firstObject'), parameters('secondObject'))]"
},
"arrayOutput": {
"type": "array",
"value": "[intersection(parameters('firstArray'), parameters('secondArray'))]"
}
}
}
Výstup výchozích hodnot z předchozího příkladu je:
| Název | Typ | Hodnota |
|---|---|---|
| objectOutput | Objekt | {"one": "a", "three": "c"} |
| arrayOutput | Pole | ["two", "three"] |
Poslední
last(arg1)
Vrátí poslední prvek pole nebo poslední znak řetězce.
V Bicep použijte last funkci.
Parametry
| Parametr | Požaduje se | Typ | Popis |
|---|---|---|---|
| arg1 řekl: | Ano | pole nebo řetězec | Hodnota pro načtení posledního prvku nebo znaku. |
Vrácená hodnota
Typ (řetězec, int, matice nebo objekt) posledního prvku v poli nebo poslední znak řetězce.
Příklad
Následující příklad ukazuje, jak použít last funkci s polem a řetězcem:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"arrayToTest": {
"type": "array",
"defaultValue": [ "one", "two", "three" ]
}
},
"resources": [
],
"outputs": {
"arrayOutput": {
"type": "string",
"value": "[last(parameters('arrayToTest'))]"
},
"stringOutput": {
"type": "string",
"value": "[last('One Two Three')]"
}
}
}
Výstup výchozích hodnot z předchozího příkladu je:
| Název | Typ | Hodnota |
|---|---|---|
| arrayOutput | Řetězec | tři |
| stringOutput | Řetězec | e |
lastIndexOf
lastIndexOf(arrayToSearch, itemToFind)
Vrátí celé číslo pro index posledního výskytu položky v poli. V porovnání se u řetězců rozlišují malá a velká písmena .
Parametry
| Parametr | Požaduje se | Typ | Popis |
|---|---|---|---|
| arrayToSearch | Ano | pole | Pole, které se má použít k vyhledání indexu hledané položky. |
| itemToFind | Ano | int, string, array nebo object | Položka, kterou chcete najít v poli. |
Vrácená hodnota
Celé číslo představující poslední index položky v poli. Index je založený na nule. Pokud se položka nenajde, vrátí se hodnota -1.
Příklady
Následující příklad ukazuje, jak používat funkce indexOflastIndexOf :
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"variables": {
"names": [
"one",
"two",
"three"
],
"numbers": [
4,
5,
6
],
"collection": [
"[variables('names')]",
"[variables('numbers')]"
],
"duplicates": [
1,
2,
3,
1
]
},
"resources": [],
"outputs": {
"index1": {
"type": "int",
"value": "[lastIndexOf(variables('names'), 'two')]"
},
"index2": {
"type": "int",
"value": "[indexOf(variables('names'), 'one')]"
},
"notFoundIndex1": {
"type": "int",
"value": "[lastIndexOf(variables('names'), 'Three')]"
},
"index3": {
"type": "int",
"value": "[lastIndexOf(variables('numbers'), 4)]"
},
"index4": {
"type": "int",
"value": "[indexOf(variables('numbers'), 6)]"
},
"notFoundIndex2": {
"type": "int",
"value": "[lastIndexOf(variables('numbers'), '5')]"
},
"index5": {
"type": "int",
"value": "[indexOf(variables('collection'), variables('numbers'))]"
},
"index6": {
"type": "int",
"value": "[indexOf(variables('duplicates'), 1)]"
},
"index7": {
"type": "int",
"value": "[lastIndexOf(variables('duplicates'), 1)]"
}
}
}
Výstup z předchozího příkladu je:
| Název | Typ | Hodnota |
|---|---|---|
| index1 | int (integer) | 0 |
| index2 | int (integer) | 0 |
| index3 | int (integer) | 0 |
| index4 | int (integer) | 2 |
| index5 | int (integer) | 0 |
| index6 | int (integer) | 0 |
| index7 | int (integer) | 3 |
| notFoundIndex1 | int (integer) | -1 |
| notFoundIndex2 | int (integer) | -1 |
délka
length(arg1)
Vrátí počet prvků v poli, znaky v řetězci nebo vlastnosti kořenové úrovně v objektu.
V Bicep použijte length funkci.
Parametry
| Parametr | Požaduje se | Typ | Popis |
|---|---|---|---|
| arg1 řekl: | Ano | pole, řetězec nebo objekt | Pole, které se má použít pro získání počtu prvků, řetězec, který se má použít pro získání počtu znaků, nebo objekt, který se má použít pro získání počtu vlastností kořenové úrovně. |
Vrácená hodnota
Int.
Příklad
Následující příklad ukazuje, jak se používá length s polem a řetězcem:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"arrayToTest": {
"type": "array",
"defaultValue": [
"one",
"two",
"three"
]
},
"stringToTest": {
"type": "string",
"defaultValue": "One Two Three"
},
"objectToTest": {
"type": "object",
"defaultValue": {
"propA": "one",
"propB": "two",
"propC": "three",
"propD": {
"propD-1": "sub",
"propD-2": "sub"
}
}
}
},
"resources": [],
"outputs": {
"arrayLength": {
"type": "int",
"value": "[length(parameters('arrayToTest'))]"
},
"stringLength": {
"type": "int",
"value": "[length(parameters('stringToTest'))]"
},
"objectLength": {
"type": "int",
"value": "[length(parameters('objectToTest'))]"
}
}
}
Výstup výchozích hodnot z předchozího příkladu je:
| Název | Typ | Hodnota |
|---|---|---|
| arrayLength | int | 3 |
| stringLength | int | 13 |
| objectLength | int | 4 |
Tuto funkci s polem můžete použít k určení počtu iterací při vytváření prostředků. V následujícím příkladu parametr siteNames odkazuje na pole názvů, které se mají použít při vytváření webů:
"copy": {
"name": "websitescopy",
"count": "[length(parameters('siteNames'))]"
}
Další informace o použití této funkce s polem najdete v tématu Iterace prostředků v šablonách ARM.
maximálně
max(arg1)
Vrátí maximální hodnotu z pole celých čísel nebo seznamu celých čísel oddělených čárkami.
V Bicep použijte max funkci.
Parametry
| Parametr | Požaduje se | Typ | Popis |
|---|---|---|---|
| arg1 řekl: | Ano | pole celých čísel nebo seznam celých čísel oddělených čárkami | Kolekce pro získání maximální hodnoty. |
Vrácená hodnota
Hodnota int představující maximální hodnotu.
Příklad
Následující příklad ukazuje, jak se používá max s polem a seznamem celých čísel:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"arrayToTest": {
"type": "array",
"defaultValue": [ 0, 3, 2, 5, 4 ]
}
},
"resources": [],
"outputs": {
"arrayOutput": {
"type": "int",
"value": "[max(parameters('arrayToTest'))]"
},
"intOutput": {
"type": "int",
"value": "[max(0,3,2,5,4)]"
}
}
}
Výstup výchozích hodnot z předchozího příkladu je:
| Název | Typ | Hodnota |
|---|---|---|
| arrayOutput | int | 5 |
| intOutput | int | 5 |
minuta
min(arg1)
Vrátí minimální hodnotu z pole celých čísel nebo seznamu celých čísel oddělených čárkami.
V Bicep použijte min funkci.
Parametry
| Parametr | Požaduje se | Typ | Popis |
|---|---|---|---|
| arg1 řekl: | Ano | pole celých čísel nebo seznam celých čísel oddělených čárkami | Kolekce pro získání minimální hodnoty. |
Vrácená hodnota
Hodnota int představující minimální hodnotu.
Příklad
Následující příklad ukazuje, jak se používá min s polem a seznamem celých čísel:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"arrayToTest": {
"type": "array",
"defaultValue": [ 0, 3, 2, 5, 4 ]
}
},
"resources": [],
"outputs": {
"arrayOutput": {
"type": "int",
"value": "[min(parameters('arrayToTest'))]"
},
"intOutput": {
"type": "int",
"value": "[min(0,3,2,5,4)]"
}
}
}
Výstup výchozích hodnot z předchozího příkladu je:
| Název | Typ | Hodnota |
|---|---|---|
| arrayOutput | int | 0 |
| intOutput | int | 0 |
oblast
range(startIndex, count)
Vytvoří pole celých čísel z počátečního celého čísla a obsahující počet položek.
V Bicep použijte range funkci.
Parametry
| Parametr | Požaduje se | Typ | Popis |
|---|---|---|---|
| startIndex | Ano | int (integer) | První celé číslo v poli. Součet startIndex a count nesmí být větší než 2147483647. |
| počítat | Ano | int (integer) | Počet celých čísel v matici Musí být nezáporné celé číslo až 1 0000. |
Vrácená hodnota
Pole celých čísel.
Příklad
Následující příklad ukazuje, jak používat range funkci:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"startingInt": {
"type": "int",
"defaultValue": 5
},
"numberOfElements": {
"type": "int",
"defaultValue": 3
}
},
"resources": [],
"outputs": {
"rangeOutput": {
"type": "array",
"value": "[range(parameters('startingInt'),parameters('numberOfElements'))]"
}
}
}
Výstup výchozích hodnot z předchozího příkladu je:
| Název | Typ | Hodnota |
|---|---|---|
| rangeOutput | Pole | [5, 6, 7] |
přeskočit
skip(originalValue, numberToSkip)
Vrátí matici se všemi prvky za zadaným číslem v matici nebo vrátí řetězec se všemi znaky za zadaným číslem v řetězci.
V Bicep použijte skip funkci.
Parametry
| Parametr | Požaduje se | Typ | Popis |
|---|---|---|---|
| originalValue | Ano | pole nebo řetězec | Pole nebo řetězec, které se mají použít pro přeskočení. |
| numberToSkip | Ano | int (integer) | Počet prvků nebo znaků, které chcete přeskočit. Pokud je tato hodnota 0 nebo menší, vrátí se všechny prvky nebo znaky v hodnotě. Pokud je větší než délka pole nebo řetězce, vrátí se prázdné pole nebo řetězec. |
Vrácená hodnota
Pole nebo řetězec.
Příklad
Následující příklad přeskočí zadaný počet prvků v poli a zadaný počet znaků v řetězci:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"testArray": {
"type": "array",
"defaultValue": [
"one",
"two",
"three"
]
},
"elementsToSkip": {
"type": "int",
"defaultValue": 2
},
"testString": {
"type": "string",
"defaultValue": "one two three"
},
"charactersToSkip": {
"type": "int",
"defaultValue": 4
}
},
"resources": [],
"outputs": {
"arrayOutput": {
"type": "array",
"value": "[skip(parameters('testArray'),parameters('elementsToSkip'))]"
},
"stringOutput": {
"type": "string",
"value": "[skip(parameters('testString'),parameters('charactersToSkip'))]"
}
}
}
Výstup výchozích hodnot z předchozího příkladu je:
| Název | Typ | Hodnota |
|---|---|---|
| arrayOutput | Pole | ["tři"] |
| stringOutput | Řetězec | dva tři |
vzít
take(originalValue, numberToTake)
Vrátí matici nebo řetězec. Matice má zadaný počet prvků od začátku pole. Řetězec má zadaný počet znaků od začátku řetězce.
V Bicep použijte take funkci.
Parametry
| Parametr | Požaduje se | Typ | Popis |
|---|---|---|---|
| originalValue | Ano | pole nebo řetězec | Pole nebo řetězec, ze které mají být prvky odebrány. |
| numberToTake | Ano | int (integer) | Počet prvků nebo znaků, které se mají vzít. Pokud je tato hodnota 0 nebo menší, vrátí se prázdné pole nebo řetězec. Pokud je větší než délka daného pole nebo řetězce, vrátí se všechny prvky v poli nebo řetězci. |
Vrácená hodnota
Pole nebo řetězec.
Příklad
Následující příklad přebírá zadaný počet prvků z pole a znaků z řetězce:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"testArray": {
"type": "array",
"defaultValue": [
"one",
"two",
"three"
]
},
"elementsToTake": {
"type": "int",
"defaultValue": 2
},
"testString": {
"type": "string",
"defaultValue": "one two three"
},
"charactersToTake": {
"type": "int",
"defaultValue": 2
}
},
"resources": [],
"outputs": {
"arrayOutput": {
"type": "array",
"value": "[take(parameters('testArray'),parameters('elementsToTake'))]"
},
"stringOutput": {
"type": "string",
"value": "[take(parameters('testString'),parameters('charactersToTake'))]"
}
}
}
Výstup výchozích hodnot z předchozího příkladu je:
| Název | Typ | Hodnota |
|---|---|---|
| arrayOutput | Pole | ["one", "two"] |
| stringOutput | Řetězec | na |
tryGet
tryGet(itemToTest, keyOrIndex)
tryGet pomáhá vyhnout se selháním nasazení při pokusu o přístup k neexistující vlastnosti nebo indexu v objektu nebo poli. Pokud zadaný klíč nebo index neexistuje, vrátí hodnotu null místo tryGet vyvolání chyby.
V bicep použijte operátor safe-dereference .
Parametry
| Parametr | Požaduje se | Typ | Popis |
|---|---|---|---|
| itemToTest | Ano | array, object | Objekt nebo pole, na které se chcete podívat. |
| keyOrIndex | Ano | řetězec, int | Klíč nebo index, který se má načíst z pole nebo objektu. Název vlastnosti pro objekty nebo index pro pole. |
Vrácená hodnota
Vrátí hodnotu v klíči nebo indexu, pokud existuje. Vrátí hodnotu null, pokud klíč nebo index chybí nebo je mimo hranice.
Příklad
Následující příklad zkontroluje, jestli pole, objekt a řetězec jsou prázdné:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"languageVersion": "2.0",
"contentVersion": "1.0.0.0",
"variables": {
"users": {
"name": "John Doe",
"age": 30
},
"colors": [
"red",
"green"
]
},
"resources": [],
"outputs": {
"region": {
"type": "string",
"nullable": true,
"value": "[tryGet(variables('users'), 'region')]"
},
"name": {
"type": "string",
"nullable": true,
"value": "[tryGet(variables('users'), 'name')]"
},
"firstColor": {
"type": "string",
"nullable": true,
"value": "[tryGet(variables('colors'), 0)]"
}
}
}
Výstup z předchozího příkladu je:
| Název | Typ | Hodnota |
|---|---|---|
| oblast | Řetězec | (Prázdný) |
| název | Řetězec | Jan Novák |
| firstColor | Řetězec | Červený |
tryIndexFromEnd
tryndexFromEnd(sourceArray, reverseIndex)
Funkce tryIndexFromEnd je bezpečná verze indexFromEnd. Načte hodnotu z pole počítáním zpět od konce bez vyvolání chyby, pokud je index mimo rozsah.
V Bicep použijte operátor rezervovaného přístupového objektu indexu a operátor Safe dereference .
Parametry
| Parametr | Požaduje se | Typ | Popis |
|---|---|---|---|
| sourceArray | Ano | pole | Hodnota pro načtení prvku počítáním zpět od konce. |
| reverseIndex | Ano | integer | Index založený na jednom z konce pole. |
Vrácená hodnota
Pokud je index platný (v mezích pole), vrátí prvek pole v daném reverzním indexu. Pokud je index mimo rozsah, vrátí hodnotu null místo vyvolání chyby.
Příklad
Následující příklad ukazuje, jak používat tryIndexFromEnd funkci:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"variables": {
"items": [
"apple",
"banana",
"orange",
"grape"
]
},
"resources": [],
"outputs": {
"secondToLast": {
"type": "string",
"value": "[tryIndexFromEnd(variables('items'), 2)]"
}
}
}
Výstup výchozích hodnot z předchozího příkladu je:
| Název | Typ | Hodnota |
|---|---|---|
| secondToLast | Řetězec | oranžová |
Následující příklad ukazuje scénář mimo vazbu:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"languageVersion": "2.0",
"contentVersion": "1.0.0.0",
"parameters": {
"items": {
"type": "array",
"defaultValue": [
"apple",
"banana",
"orange",
"grape"
]
}
},
"resources": {},
"outputs": {
"outOfBound": {
"type": "string",
"nullable": true,
"value": "[tryIndexFromEnd(parameters('items'), 5)]"
}
}
}
Výstup výchozích hodnot z předchozího příkladu je:
| Název | Typ | Hodnota |
|---|---|---|
| outOfBound | Řetězec | (null) |
sjednocení
union(arg1, arg2, arg3, ...)
Vrátí jednu matici nebo objekt se všemi prvky z parametrů. U polí se duplicitní hodnoty zahrnou jednou. U objektů jsou duplicitní názvy vlastností zahrnuty pouze jednou.
V Bicep použijte union funkci.
Parametry
| Parametr | Požaduje se | Typ | Popis |
|---|---|---|---|
| arg1 řekl: | Ano | pole nebo objekt | První hodnota, která se má použít pro spojování prvků. |
| arg2 | Ano | pole nebo objekt | Druhá hodnota, která se má použít pro spojování prvků. |
| další argumenty | Ne | pole nebo objekt | Další hodnoty, které se mají použít pro spojování prvků. |
Vrácená hodnota
Pole nebo objekt.
Poznámky
Sekvence union function parametrů slouží k určení pořadí a hodnot výsledku.
U polí funkce iteruje každý prvek v prvním parametru a přidá ji do výsledku, pokud ještě není k dispozici. Potom tento proces zopakuje pro druhý parametr a další parametry. Pokud již existuje hodnota, zachová se její dřívější umístění v poli.
Pro objekty se do výsledku přidají názvy vlastností a hodnoty z prvního parametru. Pro pozdější parametry se do výsledku přidají všechny nové názvy. Pokud má pozdější parametr vlastnost se stejným názvem, tato hodnota přepíše existující hodnotu. Pořadí vlastností není zaručeno.
Funkce union nejen slučuje prvky nejvyšší úrovně, ale také rekurzivně slučuje všechny vnořené objekty v nich. Vnořené hodnoty pole nejsou sloučeny. Podívejte se na druhý příklad v následující části.
Příklad
Následující příklad ukazuje použití union s poli a objekty:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"firstObject": {
"type": "object",
"defaultValue": {
"one": "a",
"two": "b",
"three": "c1"
}
},
"secondObject": {
"type": "object",
"defaultValue": {
"three": "c2",
"four": "d",
"five": "e"
}
},
"firstArray": {
"type": "array",
"defaultValue": [ "one", "two", "three" ]
},
"secondArray": {
"type": "array",
"defaultValue": [ "three", "four" ]
}
},
"resources": [
],
"outputs": {
"objectOutput": {
"type": "object",
"value": "[union(parameters('firstObject'), parameters('secondObject'))]"
},
"arrayOutput": {
"type": "array",
"value": "[union(parameters('firstArray'), parameters('secondArray'))]"
}
}
}
Výstup výchozích hodnot z předchozího příkladu je:
| Název | Typ | Hodnota |
|---|---|---|
| objectOutput | Objekt | {"one": "a", "two": "b", "three": "c2", "four": "d", "five": "e"} |
| arrayOutput | Pole | ["one", "two", "three", "four"] |
Následující příklad ukazuje možnosti hloubkového sloučení:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"variables": {
"firstObject": {
"property": {
"one": "a",
"two": "b",
"three": "c1"
},
"nestedArray": [
1,
2
]
},
"secondObject": {
"property": {
"three": "c2",
"four": "d",
"five": "e"
},
"nestedArray": [
3,
4
]
},
"firstArray": [
[
"one",
"two"
],
[
"three"
]
],
"secondArray": [
[
"three"
],
[
"four",
"two"
]
]
},
"resources": [],
"outputs": {
"objectOutput": {
"type": "Object",
"value": "[union(variables('firstObject'), variables('secondObject'))]"
},
"arrayOutput": {
"type": "Array",
"value": "[union(variables('firstArray'), variables('secondArray'))]"
}
}
}
Výstup z předchozího příkladu je:
| Název | Typ | Hodnota |
|---|---|---|
| objectOutput | Objekt | {"property":{"one":"a","two":"b","three":"c2","four":"d","five":"e"},"nestedArray":[3;4]} |
| arrayOutput | Pole | [["one";"two"],["three"],["four";"two"]] |
Pokud byly vnořené matice sloučeny, pak hodnota objectOutput.nestedArray je [1, 2, 3, 4] a hodnota arrayOutput je [["jedna", "two", "three"], ["three", "four", "two"]].
Další kroky
- Popis oddílů v šabloně ARM najdete v tématu Vysvětlení struktury a syntaxe šablon ARM.