Fungsi numerik untuk templat ARM

Resource Manager menyediakan fungsi berikut untuk bekerja dengan bilangan bulat di templat Azure Resource Manager (templat ARM):

Tip

Kami merekomendasikan Bicep karena menawarkan kemampuan yang sama dengan templat ARM dan sintaksnya lebih mudah digunakan. Untuk mempelajari selengkapnya tentang menggunakan int, min, dan max di Bicep, lihat fungsi numerik. Untuk nilai numerik lainnya, lihat operatornumerik.

tambahkan

add(operand1, operand2)

Mengembalikan jumlah dari dua bilangan bulat yang disediakan.

Fungsi add tidak didukung di Bicep. Gunakan + operator sebagai gantinya.

Parameter

Parameter Diperlukan Jenis Deskripsi
operand1 Ya int Angka pertama yang ditambahkan.
operand2 Ya int Angka kedua yang ditambahkan.

Nilai kembali

Bilangan bulat yang berisi jumlah parameter.

Contoh

Contoh berikut menambahkan dua 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 add"
      }
    },
    "second": {
      "type": "int",
      "defaultValue": 3,
      "metadata": {
        "description": "Second integer to add"
      }
    }
  },
  "resources": [
  ],
  "outputs": {
    "addResult": {
      "type": "int",
      "value": "[add(parameters('first'), parameters('second'))]"
    }
  }
}

Output dari contoh sebelumnya dengan nilai default adalah:

Nama Jenis Nilai
addResult Int 8

copyIndex

copyIndex(loopName, offset)

Mengembalikan indeks dari perulangan iterasi.

Pada Bicep, gunakan perulangan berulang.

Parameter

Parameter Diperlukan Jenis Deskripsi
loopName Tidak string Nama perulangan untuk mendapatkan iterasi.
offset Tidak int Angka yang akan ditambahkan ke nilai perulangan berbasis nol.

Keterangan

Fungsi ini selalu digunakan dengan objek salin. Jika tidak ada nilai yang disediakan untuk offset, nilai perulangan saat ini dikembalikan. Nilai perulangan dimulai dari nol.

Properti loopName memungkinkan Anda menentukan apakah copyIndex mengacu pada perulangan sumber daya atau perulangan properti. Jika tidak ada nilai yang disediakan untuk loopName, perulangan jenis sumber daya saat ini digunakan. Berikan nilai untuk loopName saat melakukan perulangan pada properti.

Untuk informasi selengkapnya tentang menggunakan salin, lihat:

Contoh

Contoh berikut menunjukkan perulangan salin dan nilai indeks yang disertakan dalam nama.

{
  "$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')]"
      }
    }
  ]
}

Nilai kembali

Bilangan bulat yang menunjukkan indeks perulangan saat ini.

div

div(operand1, operand2)

Mengembalikan pembagian bilangan bulat dari dua bilangan bulat yang disediakan.

Fungsi div tidak didukung di Bicep. Gunakan / operator sebagai gantinya.

Parameter

Parameter Diperlukan Jenis Deskripsi
operand1 Ya int Angkanya dibagi.
operand2 Ya int Angka yang digunakan untuk membagi. Tidak bisa 0.

Nilai kembali

Bilangan bulat yang mewakili pembagian.

Contoh

Contoh berikut membagi satu parameter dengan parameter lain.

{
  "$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'))]"
    }
  }
}

Output dari contoh sebelumnya dengan nilai default adalah:

Nama Jenis Nilai
divResult Int 2

float

float(arg1)

Mengonversi nilai menjadi bilangan titik floating. Anda hanya menggunakan fungsi ini saat meneruskan parameter kustom ke aplikasi, seperti Logic App.

Fungsi float tidak didukung di Bicep.

Parameter

Parameter Diperlukan Jenis Deskripsi
arg1 Ya string atau int Nilai yang akan diubah menjadi bilangan titik floating.

Nilai kembali

Bilangan titik floating.

Contoh

Contoh berikut menunjukkan cara menggunakan float untuk meneruskan parameter ke Logic App:

{
  "type": "Microsoft.Logic/workflows",
  "properties": {
    ...
    "parameters": {
      "custom1": {
        "value": "[float('3.0')]"
      },
      "custom2": {
        "value": "[float(3)]"
      },

int

int(valueToConvert)

Mengonversi nilai yang ditentukan menjadi bilangan bulat.

Pada Bicep, gunakan fungsi int.

Parameter

Parameter Diperlukan Jenis Deskripsi
valueToConvert Ya string atau int Nilai untuk dikonversi menjadi bilangan bulat.

Nilai kembali

Bilangan bulat dari nilai yang dikonversi.

Contoh

Contoh templat berikut mengonversi nilai parameter yang disediakan pengguna menjadi bilangan bulat.

{
  "$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'))]"
    }
  }
}

Output dari contoh sebelumnya dengan nilai default adalah:

Nama Jenis Nilai
intResult Int 4

maks

max(arg1)

Mengembalikan nilai maksimum dari array bilangan bulat atau daftar bilangan bulat yang dipisahkan koma.

Di Bicep, gunakan fungsi max.

Parameter

Parameter Diperlukan Jenis Deskripsi
arg1 Ya array bilangan bulat, atau daftar bilangan bulat yang dipisahkan koma Kumpulan untuk mendapatkan nilai maksimum.

Nilai kembali

Bilangan bulat yang mewakili nilai maksimum dari koleksi.

Contoh

Contoh berikut menunjukkan cara menggunakan maks dengan array dan daftar bilangan bulat.

{
  "$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)]"
    }
  }
}

Output dari contoh sebelumnya dengan nilai default adalah:

Nama Jenis Nilai
arrayOutput Int 5
intOutput Int 5

mnt

min(arg1)

Mengembalikan nilai minimum dari array bilangan bulat atau daftar bilangan bulat yang dipisahkan koma.

Di Bicep, gunakan fungsi min.

Parameter

Parameter Diperlukan Jenis Deskripsi
arg1 Ya array bilangan bulat, atau daftar bilangan bulat yang dipisahkan koma Kumpulan untuk mendapatkan nilai minimum.

Nilai kembali

Bilangan bulat yang mewakili nilai minimum dari koleksi.

Contoh

Contoh berikut menunjukkan cara menggunakan min dengan array dan daftar bilangan bulat.

{
  "$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)]"
    }
  }
}

Output dari contoh sebelumnya dengan nilai default adalah:

Nama Jenis Nilai
arrayOutput Int 0
intOutput Int 0

mod

mod(operand1, operand2)

Mengembalikan sisa pembagian bilangan bulat menggunakan dua bilangan bulat yang disediakan.

Fungsi mod tidak didukung di Bicep. Gunakan % operator sebagai gantinya.

Parameter

Parameter Diperlukan Jenis Deskripsi
operand1 Ya int Angkanya dibagi.
operand2 Ya int Angka yang digunakan untuk membagi, Tidak boleh 0.

Nilai kembali

Bilangan bulat yang mewakili pembagian.

Contoh

Contoh berikut mengembalikan sisa pembagian satu parameter dengan parameter lain.

{
  "$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'))]"
    }
  }
}

Output dari contoh sebelumnya dengan nilai default adalah:

Nama Jenis Nilai
modResult Int 1

mul

mul(operand1, operand2)

Mengembalikan perkalian dua bilangan bulat yang disediakan.

Fungsi mul tidak didukung di Bicep. Gunakan * operator sebagai gantinya.

Parameter

Parameter Diperlukan Jenis Deskripsi
operand1 Ya int Angka pertama untuk dikalikan.
operand2 Ya int Angka kedua untuk dikalikan.

Nilai kembali

Bilangan bulat yang mewakili perkalian.

Contoh

Contoh berikut mengalikan satu parameter dengan parameter lain.

{
  "$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)]"
    }
  }
}

Output dari contoh sebelumnya dengan nilai default adalah:

Nama Jenis Nilai
mulResult Int 45

sub

sub(operand1, operand2)

Mengembalikan pengurangan dari dua bilangan bulat yang disediakan.

Fungsi sub tidak didukung di Bicep. Gunakan - operator sebagai gantinya.

Parameter

Parameter Diperlukan Jenis Deskripsi
operand1 Ya int Angka yang dikurangi.
operand2 Ya int Angka yang dikurangi.

Nilai kembali

Bilangan bulat yang mewakili pengurangan.

Contoh

Contoh berikut mengurangi satu parameter dari parameter lain.

{
  "$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'))]"
    }
  }
}

Output dari contoh sebelumnya dengan nilai default adalah:

Nama Jenis Nilai
subResult Int 4

Langkah berikutnya