Numerieke functies voor ARM-sjablonen
Resource Manager biedt de volgende functies voor het werken met gehele getallen in uw Azure Resource Manager-sjabloon (ARM-sjabloon):
Tip
We raden Bicep aan omdat het dezelfde mogelijkheden biedt als ARM-sjablonen en de syntaxis gemakkelijker te gebruiken is. Zie numerieke functies voor meer informatie over het gebruik int
min
van, en max
in Bicep. Zie numerieke operatoren voor andere numerieke waarden.
add
add(operand1, operand2)
Retourneert de som van de twee opgegeven gehele getallen.
De add
functie wordt niet ondersteund in Bicep. Gebruik in plaats daarvan de +
operator .
Parameters
Parameter | Vereist | Type | Description |
---|---|---|---|
operand1 | Ja | int | Eerste nummer om toe te voegen. |
operand2 | Ja | int | Het tweede getal dat moet worden toegevoegd. |
Retourwaarde
Een geheel getal dat de som van de parameters bevat.
Opmerking
In het volgende voorbeeld worden twee parameters toegevoegd.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"first": {
"type": "int",
"defaultValue": 5,
"metadata": {
"description": "First integer to add"
}
},
"second": {
"type": "int",
"defaultValue": 3,
"metadata": {
"description": "Second integer to add"
}
}
},
"resources": [
],
"outputs": {
"addResult": {
"type": "int",
"value": "[add(parameters('first'), parameters('second'))]"
}
}
}
De uitvoer uit het voorgaande voorbeeld met de standaardwaarden is:
Name | Type | Weergegeven als |
---|---|---|
addResult | Int | 8 |
copyIndex
copyIndex(loopName, offset)
Retourneert de index van een iteratielus.
Gebruik in Bicep iteratieve lussen.
Parameters
Parameter | Vereist | Type | Description |
---|---|---|---|
loopName | Nee | tekenreeks | De naam van de lus voor het ophalen van de iteratie. |
offset | Nee | int | Het getal dat moet worden toegevoegd aan de iteratiewaarde op basis van nul. |
Opmerkingen
Deze functie wordt altijd gebruikt met een kopieerobject . Als er geen waarde wordt opgegeven voor offset, wordt de huidige iteratiewaarde geretourneerd. De iteratiewaarde begint bij nul.
Met de eigenschap loopName kunt u opgeven of copyIndex verwijst naar een resource-iteratie of iteratie van eigenschappen. Als er geen waarde wordt opgegeven voor loopName, wordt de iteratie van het huidige resourcetype gebruikt. Geef een waarde op voor loopName bij het herhalen van een eigenschap.
Zie voor meer informatie over het gebruik van kopiëren:
- Resource-iteratie in ARM-sjablonen
- Iteratie van eigenschappen in ARM-sjablonen
- Variabele iteratie in ARM-sjablonen
- Uitvoeriteratie in ARM-sjablonen
Opmerking
In het volgende voorbeeld ziet u een kopieerlus en de indexwaarde die in de naam is opgenomen.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"storageCount": {
"type": "int",
"defaultValue": 2
},
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]"
}
},
"resources": [
{
"type": "Microsoft.Storage/storageAccounts",
"apiVersion": "2022-09-01",
"name": "[format('{0}storage{1}', range(0, parameters('storageCount'))[copyIndex()], uniqueString(resourceGroup().id))]",
"location": "[parameters('location')]",
"sku": {
"name": "Standard_LRS"
},
"kind": "Storage",
"properties": {},
"copy": {
"name": "storagecopy",
"count": "[parameters('storageCount')]"
}
}
]
}
Retourwaarde
Een geheel getal dat de huidige index van de iteratie vertegenwoordigt.
div
div(operand1, operand2)
Retourneert de gehele getallen van de twee opgegeven gehele getallen.
De div
functie wordt niet ondersteund in Bicep. Gebruik in plaats daarvan de /
operator .
Parameters
Parameter | Vereist | Type | Description |
---|---|---|---|
operand1 | Ja | int | Het getal dat wordt gedeeld. |
operand2 | Ja | int | Het getal dat wordt gebruikt om te delen. Kan niet 0 zijn. |
Retourwaarde
Een geheel getal dat de deling vertegenwoordigt.
Opmerking
In het volgende voorbeeld wordt de ene parameter door een andere parameter gedeeld.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"first": {
"type": "int",
"defaultValue": 8,
"metadata": {
"description": "Integer being divided"
}
},
"second": {
"type": "int",
"defaultValue": 3,
"metadata": {
"description": "Integer used to divide"
}
}
},
"resources": [
],
"outputs": {
"divResult": {
"type": "int",
"value": "[div(parameters('first'), parameters('second'))]"
}
}
}
De uitvoer uit het voorgaande voorbeeld met de standaardwaarden is:
Name | Type | Weergegeven als |
---|---|---|
divResult | Int | 2 |
zwevend
float(arg1)
Converteert de waarde naar een drijvende-kommanummer. U gebruikt deze functie alleen bij het doorgeven van aangepaste parameters aan een toepassing, zoals een logische app.
De float
functie wordt niet ondersteund in Bicep.
Parameters
Parameter | Vereist | Type | Description |
---|---|---|---|
arg1 | Ja | tekenreeks of int | De waarde die moet worden geconverteerd naar een drijvendekommagetal. |
Retourwaarde
Een drijvendekommagetal.
Opmerking
In het volgende voorbeeld ziet u hoe u float gebruikt om parameters door te geven aan een logische app:
{
"type": "Microsoft.Logic/workflows",
"properties": {
...
"parameters": {
"custom1": {
"value": "[float('3.0')]"
},
"custom2": {
"value": "[float(3)]"
},
int
int(valueToConvert)
Converteert de opgegeven waarde naar een geheel getal.
Gebruik in Bicep de int-functie .
Parameters
Parameter | Vereist | Type | Description |
---|---|---|---|
valueToConvert | Ja | tekenreeks of int | De waarde die moet worden geconverteerd naar een geheel getal. |
Retourwaarde
Een geheel getal van de geconverteerde waarde.
Opmerking
Met de volgende voorbeeldsjabloon wordt de door de gebruiker opgegeven parameterwaarde geconverteerd naar een geheel getal.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"stringToConvert": {
"type": "string",
"defaultValue": "4"
}
},
"resources": [
],
"outputs": {
"intResult": {
"type": "int",
"value": "[int(parameters('stringToConvert'))]"
}
}
}
De uitvoer uit het voorgaande voorbeeld met de standaardwaarden is:
Name | Type | Weergegeven als |
---|---|---|
intResult | Int | 4 |
max
max(arg1)
Retourneert de maximumwaarde van een matrix met gehele getallen of een door komma's gescheiden lijst met gehele getallen.
Gebruik in Bicep de maximale functie.
Parameters
Parameter | Vereist | Type | Description |
---|---|---|---|
arg1 | Ja | matrix van gehele getallen of door komma's gescheiden lijst met gehele getallen | De verzameling om de maximumwaarde op te halen. |
Retourwaarde
Een geheel getal dat de maximumwaarde van de verzameling aangeeft.
Opmerking
In het volgende voorbeeld ziet u hoe u max gebruikt met een matrix en een lijst met gehele getallen.
{
"$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)]"
}
}
}
De uitvoer uit het voorgaande voorbeeld met de standaardwaarden is:
Name | Type | Weergegeven als |
---|---|---|
arrayOutput | Int | 5 |
intOutput | Int | 5 |
min.
min(arg1)
Retourneert de minimumwaarde van een matrix met gehele getallen of een door komma's gescheiden lijst met gehele getallen.
Gebruik in Bicep de min-functie .
Parameters
Parameter | Vereist | Type | Description |
---|---|---|---|
arg1 | Ja | matrix van gehele getallen of door komma's gescheiden lijst met gehele getallen | De verzameling om de minimumwaarde op te halen. |
Retourwaarde
Een geheel getal dat de minimumwaarde uit de verzameling vertegenwoordigt.
Opmerking
In het volgende voorbeeld ziet u hoe u min gebruikt met een matrix en een lijst met gehele getallen.
{
"$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)]"
}
}
}
De uitvoer uit het voorgaande voorbeeld met de standaardwaarden is:
Name | Type | Weergegeven als |
---|---|---|
arrayOutput | Int | 0 |
intOutput | Int | 0 |
mod
mod(operand1, operand2)
Retourneert de rest van de gehele getallen met behulp van de twee opgegeven gehele getallen.
De mod
functie wordt niet ondersteund in Bicep. Gebruik in plaats daarvan de operator %.
Parameters
Parameter | Vereist | Type | Description |
---|---|---|---|
operand1 | Ja | int | Het getal dat wordt gedeeld. |
operand2 | Ja | int | Het getal dat wordt gebruikt om te delen, kan niet 0 zijn. |
Retourwaarde
Een geheel getal dat de rest vertegenwoordigt.
Opmerking
In het volgende voorbeeld wordt de rest geretourneerd van het delen van een parameter door een andere parameter.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"first": {
"type": "int",
"defaultValue": 7,
"metadata": {
"description": "Integer being divided"
}
},
"second": {
"type": "int",
"defaultValue": 3,
"metadata": {
"description": "Integer used to divide"
}
}
},
"resources": [
],
"outputs": {
"modResult": {
"type": "int",
"value": "[mod(parameters('first'), parameters('second'))]"
}
}
}
De uitvoer uit het voorgaande voorbeeld met de standaardwaarden is:
Name | Type | Weergegeven als |
---|---|---|
modResult | Int | 1 |
mul
mul(operand1, operand2)
Retourneert de vermenigvuldiging van de twee opgegeven gehele getallen.
De mul
functie wordt niet ondersteund in Bicep. Gebruik in plaats daarvan de operator *.
Parameters
Parameter | Vereist | Type | Description |
---|---|---|---|
operand1 | Ja | int | Eerste getal om te vermenigvuldigen. |
operand2 | Ja | int | Tweede getal om te vermenigvuldigen. |
Retourwaarde
Een geheel getal dat de vermenigvuldiging vertegenwoordigt.
Opmerking
In het volgende voorbeeld wordt één parameter vermenigvuldigd met een andere parameter.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"first": {
"type": "int",
"defaultValue": 5,
"metadata": {
"description": "First integer to multiply"
}
},
"second": {
"type": "int",
"defaultValue": 3,
"metadata": {
"description": "Second integer to multiply"
}
}
},
"resources": [
],
"outputs": {
"mulResult": {
"type": "int",
"value": "[mul(mul(parameters('first'), parameters('second')), 3)]"
}
}
}
De uitvoer uit het voorgaande voorbeeld met de standaardwaarden is:
Name | Type | Weergegeven als |
---|---|---|
mulResult | Int | 45 |
sub
sub(operand1, operand2)
Retourneert de aftrekking van de twee opgegeven gehele getallen.
De sub
functie wordt niet ondersteund in Bicep. Gebruik in plaats daarvan de operator - .
Parameters
Parameter | Vereist | Type | Description |
---|---|---|---|
operand1 | Ja | int | Het getal dat wordt afgetrokken van. |
operand2 | Ja | int | Het getal dat wordt afgetrokken. |
Retourwaarde
Een geheel getal dat de aftrekking vertegenwoordigt.
Opmerking
In het volgende voorbeeld wordt de ene parameter van een andere parameter afgetrokken.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"first": {
"type": "int",
"defaultValue": 7,
"metadata": {
"description": "Integer subtracted from"
}
},
"second": {
"type": "int",
"defaultValue": 3,
"metadata": {
"description": "Integer to subtract"
}
}
},
"resources": [
],
"outputs": {
"subResult": {
"type": "int",
"value": "[sub(parameters('first'), parameters('second'))]"
}
}
}
De uitvoer uit het voorgaande voorbeeld met de standaardwaarden is:
Name | Type | Weergegeven als |
---|---|---|
subResult | Int | 4 |
Volgende stappen
- Zie De structuur en syntaxis van ARM-sjablonen begrijpen voor een beschrijving van de secties in een ARM-sjabloon.
- Als u een bepaald aantal keren wilt herhalen wanneer u een type resource maakt, raadpleegt u resource-iteratie in ARM-sjablonen.