A Bicep tömbfüggvényei
Ez a cikk a Tömbök használatához használható Bicep-függvényeket ismerteti. A tömbök használatára szolgáló lambda függvények itt találhatók.
array
array(convertToArray)
Az értéket tömbté alakítja.
Névtér: sys.
Paraméterek
Paraméter | Kötelező | Típus | Leírás |
---|---|---|---|
convertToArray | Igen | int, sztring, tömb vagy objektum | A tömbké konvertálandó érték. |
Visszaadott érték
Egy tömb.
Példa
Az alábbi példa bemutatja, hogyan használhatja a tömbfüggvényt különböző típusokkal.
param intToConvert int = 1
param stringToConvert string = 'efgh'
param objectToConvert object = {
a: 'b'
c: 'd'
}
output intOutput array = array(intToConvert)
output stringOutput array = array(stringToConvert)
output objectOutput array = array(objectToConvert)
Az előző példában szereplő kimenet az alapértelmezett értékekkel a következő:
Név | Típus | Érték |
---|---|---|
intOutput | Tömb | [1] |
stringOutput | Tömb | ["efgh"] |
objectOutput | Tömb | [{"a": "b", "c": "d"}] |
összefűzés
concat(arg1, arg2, arg3, ...)
Több tömböt egyesít, és visszaadja az összefűzött tömböt. További információ a több sztring kombinálásáról: összefűzés.
Névtér: sys.
Paraméterek
Paraméter | Kötelező | Típus | Leírás |
---|---|---|---|
arg1 | Igen | array | Az összefűzés első tömbje. |
további argumentumok | Nem | array | További tömbök szekvenciális sorrendben az összefűzéshez. |
Ez a függvény tetszőleges számú tömböt vesz igénybe, és egyesíti őket.
Visszaadott érték
Összefűzött értékek tömbje.
Példa
Az alábbi példa bemutatja, hogyan kombinálhat két tömböt.
param firstArray array = [
'1-1'
'1-2'
'1-3'
]
param secondArray array = [
'2-1'
'2-2'
'2-3'
]
output return array = concat(firstArray, secondArray)
Az előző példában szereplő kimenet az alapértelmezett értékekkel a következő:
Név | Típus | Érték |
---|---|---|
vissza | Tömb | ["1-1", "1-2", "1-3", "2-1", "2-2", "2-3"] |
contains
contains(container, itemToFind)
Ellenőrzi, hogy egy tömb tartalmaz-e értéket, egy objektum tartalmaz-e kulcsot, vagy egy sztring tartalmaz-e részsztringet. A sztringek összehasonlítása megkülönbözteti a kis- és nagybetűk értékét. Ha azonban egy objektum tartalmaz kulcsot, az összehasonlítás érzéketlen.
Névtér: sys.
Paraméterek
Paraméter | Kötelező | Típus | Leírás |
---|---|---|---|
tároló | Igen | tömb, objektum vagy sztring | A keresendő értéket tartalmazó érték. |
itemToFind | Igen | sztring vagy int | A keresendő érték. |
Visszaadott érték
Igaz , ha az elem megtalálható; ellenkező esetben Hamis.
Példa
Az alábbi példa bemutatja, hogyan használható különböző típusú:
param stringToTest string = 'OneTwoThree'
param objectToTest object = {
one: 'a'
two: 'b'
three: 'c'
}
param arrayToTest array = [
'one'
'two'
'three'
]
output stringTrue bool = contains(stringToTest, 'e')
output stringFalse bool = contains(stringToTest, 'z')
output objectTrue bool = contains(objectToTest, 'one')
output objectFalse bool = contains(objectToTest, 'a')
output arrayTrue bool = contains(arrayToTest, 'three')
output arrayFalse bool = contains(arrayToTest, 'four')
Az előző példában szereplő kimenet az alapértelmezett értékekkel a következő:
Név | Típus | Érték |
---|---|---|
stringTrue | Bool | Igaz |
stringFalse | Bool | Hamis |
objectTrue | Bool | Igaz |
objectFalse | Bool | Hamis |
arrayTrue | Bool | Igaz |
arrayFalse | Bool | Hamis |
üres
empty(itemToTest)
Meghatározza, hogy egy tömb, objektum vagy sztring üres vagy null értékű-e.
Névtér: sys.
Paraméterek
Paraméter | Kötelező | Típus | Leírás |
---|---|---|---|
itemToTest | Igen | tömb, objektum vagy sztring | Az az érték, amely ellenőrzi, hogy üres vagy null értékű-e. |
Visszaadott érték
Igaz értéket ad vissza, ha az érték üres vagy null; ellenkező esetben Hamis.
Példa
Az alábbi példa azt ellenőrzi, hogy egy tömb, objektum és sztring üres-e.
param testArray array = []
param testObject object = {}
param testString string = ''
param testNullString string?
output arrayEmpty bool = empty(testArray)
output objectEmpty bool = empty(testObject)
output stringEmpty bool = empty(testString)
output stringNull bool = empty(testNullString)
Az előző példában szereplő kimenet az alapértelmezett értékekkel a következő:
Név | Típus | Érték |
---|---|---|
arrayEmpty | Bool | Igaz |
objectEmpty | Bool | Igaz |
stringEmpty | Bool | Igaz |
stringNull | Bool | Igaz |
Rövid útmutatók – példák
A következő példa egy gyorsútmutató-sablonból származik, amely a virtuális hálózat diagnosztikai naplók beállításaival rendelkezik:
@description('Array containing DNS Servers')
param dnsServers array = []
...
resource vnet 'Microsoft.Network/virtualNetworks@2023-11-01' = {
name: vnetName
location: location
properties: {
addressSpace: {
addressPrefixes: vnetAddressSpace
}
dhcpOptions: empty(dnsServers) ? null : {
dnsServers: dnsServers
}
...
}
}
A feltételes kifejezésben a rendszer az üres függvényt használja annak ellenőrzésére, hogy a dnsServers tömb üres tömb-e.
első
first(arg1)
A tömb első elemét vagy a sztring első karakterét adja vissza.
Névtér: sys.
Paraméterek
Paraméter | Kötelező | Típus | Leírás |
---|---|---|---|
arg1 | Igen | tömb vagy sztring | Az első elem vagy karakter beolvasásának értéke. |
Visszaadott érték
A tömb első elemének típusa (sztring, int, tömb vagy objektum) vagy egy sztring első karaktere.
Példa
Az alábbi példa bemutatja, hogyan használható az első függvény tömbökkel és sztringekkel.
param arrayToTest array = [
'one'
'two'
'three'
]
output arrayOutput string = first(arrayToTest)
output stringOutput string = first('One Two Three')
Az előző példában szereplő kimenet az alapértelmezett értékekkel a következő:
Név | Típus | Érték |
---|---|---|
arrayOutput | Sztring | egy |
stringOutput | Sztring | O |
szétlapít
flatten(arrayToFlatten)
Tömbtömböt vesz fel, és az eredeti sorrendben ad vissza egy részarray elemekből álló tömböt. Az alarray-k csak egyszer vannak összeolvadva, nem rekurzívan.
Névtér: sys.
Paraméterek
Paraméter | Kötelező | Típus | Leírás |
---|---|---|---|
arrayToFlattern | Igen | array | Az elsimítandó alarrayok tömbje. |
Visszaadott érték
Tömb
Példa
Az alábbi példa az összesimított függvény használatát mutatja be.
param arrayToTest array = [
['one', 'two']
['three']
['four', 'five']
]
output arrayOutput array = flatten(arrayToTest)
Az előző példában szereplő kimenet az alapértelmezett értékekkel a következő:
Név | Típus | Érték |
---|---|---|
arrayOutput | array | "egy", "kettő", "három", "négy", "öt" |
indexOf
indexOf(arrayToSearch, itemToFind)
Egy elem első előfordulásának indexét adja vissza egy tömbben. Az összehasonlítás a sztringek esetében megkülönbözteti a kis- és nagybetűket.
Névtér: sys.
Paraméterek
Paraméter | Kötelező | Típus | Leírás |
---|---|---|---|
arrayToSearch | Igen | array | A keresett elem indexének megkereséséhez használandó tömb. |
itemToFind | Igen | int, sztring, tömb vagy objektum | A tömbben keresendő elem. |
Visszaadott érték
A tömbben lévő elem első indexét jelölő egész szám. Az index nulla alapú. Ha az elem nem található, a rendszer a -1 értéket adja vissza.
Példák
Az alábbi példa az indexOf és a lastIndexOf függvény használatát mutatja be:
var names = [
'one'
'two'
'three'
]
var numbers = [
4
5
6
]
var collection = [
names
numbers
]
var duplicates = [
1
2
3
1
]
output index1 int = lastIndexOf(names, 'two')
output index2 int = indexOf(names, 'one')
output notFoundIndex1 int = lastIndexOf(names, 'Three')
output index3 int = lastIndexOf(numbers, 4)
output index4 int = indexOf(numbers, 6)
output notFoundIndex2 int = lastIndexOf(numbers, '5')
output index5 int = indexOf(collection, numbers)
output index6 int = indexOf(duplicates, 1)
output index7 int = lastIndexOf(duplicates, 1)
Az előző példa kimenete a következő:
Név | Típus | Érték |
---|---|---|
index1 | egész | 0 |
index2 | egész | 0 |
index3 | egész | 0 |
index4 | egész | 2 |
index5 | egész | 0 |
index6 | egész | 0 |
index7 | egész | 3 |
notFoundIndex1 | egész | 1- |
notFoundIndex2 | egész | 1- |
útkereszteződés
intersection(arg1, arg2, arg3, ...)
Egyetlen tömböt vagy objektumot ad vissza a paraméterek gyakori elemeivel.
Névtér: sys.
Paraméterek
Paraméter | Kötelező | Típus | Leírás |
---|---|---|---|
arg1 | Igen | tömb vagy objektum | A gyakori elemek megkereséséhez elsőként használandó érték. |
arg2 | Igen | tömb vagy objektum | A második érték, amelyet a gyakori elemek kereséséhez használunk. |
további argumentumok | Nem | tömb vagy objektum | További értékek a gyakori elemek megtalálásához. |
Visszaadott érték
Egy tömb vagy objektum a közös elemekkel. Az elemek sorrendjét az első tömbparaméter határozza meg.
Példa
Az alábbi példa bemutatja, hogyan használható metszet tömbökkel és objektumokkal:
param firstObject object = {
one: 'a'
two: 'b'
three: 'c'
}
param secondObject object = {
one: 'a'
two: 'z'
three: 'c'
}
param firstArray array = [
'one'
'two'
'three'
]
param secondArray array = [
'two'
'three'
]
output objectOutput object = intersection(firstObject, secondObject)
output arrayOutput array = intersection(firstArray, secondArray)
Az előző példában szereplő kimenet az alapértelmezett értékekkel a következő:
Név | Típus | Érték |
---|---|---|
objectOutput | Objektum | {"one": "a", "három": "c"} |
arrayOutput | Tömb | ["two", "three"] |
Az első tömbparaméter határozza meg a metszett elemek sorrendjét. Az alábbi példa bemutatja, hogy a visszaadott elemek sorrendje az első tömbön alapul.
var array1 = [
1
2
3
4
]
var array2 = [
3
2
1
]
var array3 = [
4
1
3
2
]
output commonUp array = intersection(array1, array2, array3)
output commonDown array = intersection(array2, array3, array1)
Az előző példa kimenete a következő:
Név | Típus | Érték |
---|---|---|
commonUp | array | [1, 2, 3] |
commonDown | array | [3, 2, 1] |
utolsó
last(arg1)
A tömb utolsó elemét, vagy a sztring utolsó karakterét adja vissza.
Névtér: sys.
Paraméterek
Paraméter | Kötelező | Típus | Leírás |
---|---|---|---|
arg1 | Igen | tömb vagy sztring | Az utolsó elem vagy karakter beolvasásának értéke. |
Visszaadott érték
A tömb utolsó elemének típusa (sztring, int, tömb vagy objektum) vagy egy sztring utolsó karaktere.
Példa
Az alábbi példa bemutatja, hogyan használható az utolsó függvény tömbökkel és sztringekkel.
param arrayToTest array = [
'one'
'two'
'three'
]
output arrayOutput string = last(arrayToTest)
output stringOutput string = last('One Two three')
Az előző példában szereplő kimenet az alapértelmezett értékekkel a következő:
Név | Típus | Érték |
---|---|---|
arrayOutput | Sztring | három |
stringOutput | Sztring | e |
lastIndexOf
lastIndexOf(arrayToSearch, itemToFind)
Egy tömbben lévő elem utolsó előfordulásának indexét adja vissza egész számként. Az összehasonlítás a sztringek esetében megkülönbözteti a kis- és nagybetűket.
Névtér: sys.
Paraméterek
Paraméter | Kötelező | Típus | Leírás |
---|---|---|---|
arrayToSearch | Igen | array | A keresett elem indexének megkereséséhez használandó tömb. |
itemToFind | Igen | int, sztring, tömb vagy objektum | A tömbben keresendő elem. |
Visszaadott érték
A tömbben lévő elem utolsó indexét jelölő egész szám. Az index nulla alapú. Ha az elem nem található, a rendszer a -1 értéket adja vissza.
Példák
Az alábbi példa az indexOf és a lastIndexOf függvény használatát mutatja be:
var names = [
'one'
'two'
'three'
]
var numbers = [
4
5
6
]
var collection = [
names
numbers
]
var duplicates = [
1
2
3
1
]
output index1 int = lastIndexOf(names, 'two')
output index2 int = indexOf(names, 'one')
output notFoundIndex1 int = lastIndexOf(names, 'Three')
output index3 int = lastIndexOf(numbers, 4)
output index4 int = indexOf(numbers, 6)
output notFoundIndex2 int = lastIndexOf(numbers, '5')
output index5 int = indexOf(collection, numbers)
output index6 int = indexOf(duplicates, 1)
output index7 int = lastIndexOf(duplicates, 1)
Az előző példa kimenete a következő:
Név | Típus | Érték |
---|---|---|
index1 | egész | 0 |
index2 | egész | 0 |
index3 | egész | 0 |
index4 | egész | 2 |
index5 | egész | 0 |
index6 | egész | 0 |
index7 | egész | 3 |
notFoundIndex1 | egész | 1- |
notFoundIndex2 | egész | 1- |
length (hossz)
length(arg1)
Egy tömb elemeinek számát, egy sztringben szereplő karaktereket vagy egy objektum gyökérszintű tulajdonságait adja vissza.
Névtér: sys.
Paraméterek
Paraméter | Kötelező | Típus | Leírás |
---|---|---|---|
arg1 | Igen | tömb, sztring vagy objektum | Az elemek számának lekéréséhez használandó tömb, a karakterek számának lekéréséhez használandó sztring vagy a gyökérszintű tulajdonságok számának lekéréséhez használni kívánt objektum. |
Visszaadott érték
Egy int.
Példa
Az alábbi példa a hossz tömbökkel és sztringekkel való használatát mutatja be:
param arrayToTest array = [
'one'
'two'
'three'
]
param stringToTest string = 'One Two Three'
param objectToTest object = {
propA: 'one'
propB: 'two'
propC: 'three'
propD: {
'propD-1': 'sub'
'propD-2': 'sub'
}
}
output arrayLength int = length(arrayToTest)
output stringLength int = length(stringToTest)
output objectLength int = length(objectToTest)
Az előző példában szereplő kimenet az alapértelmezett értékekkel a következő:
Név | Típus | Érték |
---|---|---|
arrayLength | Int | 3 |
stringLength | Int | 13 |
objectLength | Int | 4 |
Rövid útmutatók – példák
Az alábbi példa egy rövid útmutatósablonból származik, amely az API Management központi telepítése nyilvános IP-címmel rendelkező külső virtuális hálózaton:
@description('Numbers for availability zones, for example, 1,2,3.')
param availabilityZones array = [
'1'
'2'
]
resource exampleApim 'Microsoft.ApiManagement/service@2023-05-01-preview' = {
name: apiManagementName
location: location
sku: {
name: sku
capacity: skuCount
}
zones: ((length(availabilityZones) == 0) ? null : availabilityZones)
...
}
A feltételes kifejezésben a length
függvény ellenőrzi a rendelkezésre állási zónák tömb hosszát.
További példákat az alábbi rövid útmutató Bicep-fájlokban talál:
- Resource Manager-alapú virtuális gépek biztonsági mentése Recovery Services-tárolóval
- API Management üzembe helyezése rendelkezésre állási zónákban
- Tűzfal és FirewallPolicy létrehozása szabályokkal és IP-csoportokkal
- Az Azure Firewall tesztkörnyezeti beállításának létrehozása zónákkal
max.
max(arg1)
Az egész számok tömbjének vagy az egész számok vesszővel tagolt listájának maximális értékét adja vissza.
Névtér: sys.
Paraméterek
Paraméter | Kötelező | Típus | Leírás |
---|---|---|---|
arg1 | Igen | egész számok tömbje vagy egész számok vesszővel tagolt listája | A gyűjtemény a maximális érték lekéréséhez. |
Visszaadott érték
A maximális értéket képviselő int.
Példa
Az alábbi példa bemutatja, hogyan használható a max tömb és az egész számok listája:
param arrayToTest array = [
0
3
2
5
4
]
output arrayOutput int = max(arrayToTest)
output intOutput int = max(0,3,2,5,4)
Az előző példában szereplő kimenet az alapértelmezett értékekkel a következő:
Név | Típus | Érték |
---|---|---|
arrayOutput | Int | 5 |
intOutput | Int | 5 |
p
min(arg1)
Az egész számok tömbjének vagy az egész számok vesszővel tagolt listájának minimális értékét adja vissza.
Névtér: sys.
Paraméterek
Paraméter | Kötelező | Típus | Leírás |
---|---|---|---|
arg1 | Igen | egész számok tömbje vagy egész számok vesszővel tagolt listája | A gyűjtemény a minimális érték lekéréséhez. |
Visszaadott érték
A minimális értéket képviselő int.
Példa
Az alábbi példa bemutatja, hogyan használható a min tömb és az egész számok listája:
param arrayToTest array = [
0
3
2
5
4
]
output arrayOutput int = min(arrayToTest)
output intOutput int = min(0,3,2,5,4)
Az előző példában szereplő kimenet az alapértelmezett értékekkel a következő:
Név | Típus | Érték |
---|---|---|
arrayOutput | Int | 0 |
intOutput | Int | 0 |
tartomány
range(startIndex, count)
Egy kezdő egész számból álló egész számokból álló tömböt hoz létre, amely az elemek számát tartalmazza.
Névtér: sys.
Paraméterek
Paraméter | Kötelező | Típus | Leírás |
---|---|---|---|
startIndex | Igen | egész | A tömb első egésze. A startIndex és a darabszám összege nem lehet nagyobb, mint 2147483647. |
darabszám | Igen | egész | A tömb egész számainak száma. Legfeljebb 10000 nem negatív egész szám lehet. |
Visszaadott érték
Egész számok tömbje.
Példa
Az alábbi példa a tartományfüggvény használatát mutatja be:
param startingInt int = 5
param numberOfElements int = 3
output rangeOutput array = range(startingInt, numberOfElements)
Az előző példában szereplő kimenet az alapértelmezett értékekkel a következő:
Név | Típus | Érték |
---|---|---|
rangeOutput | Tömb | [5, 6, 7] |
Rövid útmutatók – példák
Az alábbi példa egy rövid útmutatósablonból származik, amely két virtuális gép a VNET-ben – Belső terheléselosztó és LB-szabályok :
...
var numberOfInstances = 2
resource networkInterface 'Microsoft.Network/networkInterfaces@2023-11-01' = [for i in range(0, numberOfInstances): {
name: '${networkInterfaceName}${i}'
location: location
properties: {
...
}
}]
resource vm 'Microsoft.Compute/virtualMachines@2024-03-01' = [for i in range(0, numberOfInstances): {
name: '${vmNamePrefix}${i}'
location: location
properties: {
...
}
}]
A Bicep-fájl két networkInterface és két virtualMachine erőforrást hoz létre.
További példákat az alábbi rövid útmutató Bicep-fájlokban talál:
- Több virtuálisgép-sablon felügyelt lemezzel
- Virtuális gép létrehozása több üres StandardSSD_LRS adatlemezzel
- Tűzfal és FirewallPolicy létrehozása szabályokkal és IP-csoportokkal
- Azure Firewall létrehozása IpGroups használatával
- Az Azure Firewall tesztkörnyezeti beállításának létrehozása zónákkal
- Azure Firewall létrehozása több nyilvános IP-címmel
- Standard terheléselosztó létrehozása
- Példa az Azure Traffic Manager virtuális gépre
- Biztonsági automatizálás létrehozása adott riasztásokhoz
- SQL Server virtuális gép teljesítményoptimalizált tárolási beállításokkal
- Tárfiók létrehozása több Blob-tárolóval
- Tárfiók létrehozása több fájlmegosztással
Kihagyás
skip(originalValue, numberToSkip)
Olyan tömböt ad vissza, amely a tömb megadott száma után az összes elemet tartalmazza, vagy egy karakterláncot ad vissza, amely a megadott szám után az összes karaktert tartalmazza a sztringben.
Névtér: sys.
Paraméterek
Paraméter | Kötelező | Típus | Leírás |
---|---|---|---|
originalValue | Igen | tömb vagy sztring | A kihagyáshoz használandó tömb vagy sztring. |
numberToSkip | Igen | egész | Az kihagyandó elemek vagy karakterek száma. Ha ez az érték 0 vagy kevesebb, a rendszer az érték összes elemét vagy karakterét visszaadja. Ha nagyobb, mint a tömb vagy a sztring hossza, a függvény üres tömböt vagy sztringet ad vissza. |
Visszaadott érték
Tömb vagy sztring.
Példa
Az alábbi példa kihagyja a tömb megadott számú elemét és a sztringben megadott számú karaktert.
param testArray array = [
'one'
'two'
'three'
]
param elementsToSkip int = 2
param testString string = 'one two three'
param charactersToSkip int = 4
output arrayOutput array = skip(testArray, elementsToSkip)
output stringOutput string = skip(testString, charactersToSkip)
Az előző példában szereplő kimenet az alapértelmezett értékekkel a következő:
Név | Típus | Érték |
---|---|---|
arrayOutput | Tömb | ["három"] |
stringOutput | Sztring | két három |
Elvétel
take(originalValue, numberToTake)
Olyan tömböt ad vissza, amely a tömb kezdetétől megadott számú elemet tartalmaz, vagy egy sztringet, amely a sztring kezdetétől megadott számú karaktert tartalmaz.
Névtér: sys.
Paraméterek
Paraméter | Kötelező | Típus | Leírás |
---|---|---|---|
originalValue | Igen | tömb vagy sztring | Az elemeket átvenni kívánt tömb vagy sztring. |
numberToTake | Igen | egész | A felvenni kívánt elemek vagy karakterek száma. Ha ez az érték 0 vagy kevesebb, a függvény egy üres tömböt vagy sztringet ad vissza. Ha nagyobb, mint az adott tömb vagy sztring hossza, a rendszer visszaadja a tömb vagy sztring összes elemét. |
Visszaadott érték
Tömb vagy sztring.
Példa
Az alábbi példa a tömb megadott számú elemét és egy sztringből származó karaktereket veszi fel.
param testArray array = [
'one'
'two'
'three'
]
param elementsToTake int = 2
param testString string = 'one two three'
param charactersToTake int = 2
output arrayOutput array = take(testArray, elementsToTake)
output stringOutput string = take(testString, charactersToTake)
Az előző példában szereplő kimenet az alapértelmezett értékekkel a következő:
Név | Típus | Érték |
---|---|---|
arrayOutput | Tömb | ["egy", "kettő"] |
stringOutput | Sztring | ekkor |
unió
union(arg1, arg2, arg3, ...)
Egyetlen tömböt vagy objektumot ad vissza a paraméterek összes elemével. Tömbök esetén a rendszer egyszer tartalmazza az ismétlődő értékeket. Objektumok esetén a rendszer csak egyszer tartalmazza a duplikált tulajdonságneveket.
Névtér: sys.
Paraméterek
Paraméter | Kötelező | Típus | Leírás |
---|---|---|---|
arg1 | Igen | tömb vagy objektum | Az első elemillesztéshez használható érték. |
arg2 | Igen | tömb vagy objektum | Az elemek összekapcsolásához használt második érték. |
további argumentumok | Nem | tömb vagy objektum | További értékek az elemek összekapcsolásához. |
Visszaadott érték
Tömb vagy objektum.
Megjegyzések
Az egyesítő függvény a paraméterek sorrendjét használja az eredmény sorrendjének és értékeinek meghatározásához.
Tömbök esetén a függvény végigfut az első paraméter minden elemén, és hozzáadja az eredményhez, ha még nincs jelen. Ezután megismétli a második paraméter és minden további paraméter folyamatát. Ha egy érték már jelen van, a tömb korábbi elhelyezése megmarad.
Objektumok esetén a rendszer hozzáadja az első paraméter tulajdonságneveit és értékeit az eredményhez. A későbbi paraméterek esetében a rendszer minden új nevet hozzáad az eredményhez. Ha egy későbbi paraméter azonos nevű tulajdonsággal rendelkezik, az az érték felülírja a meglévő értéket. A tulajdonságok sorrendje nem garantált.
Az egyesítő függvény nem csak a legfelső szintű elemeket egyesíti, hanem rekurzív módon egyesíti a bennük lévő beágyazott objektumokat is. A beágyazott tömbértékek nincsenek egyesítve. Lásd a második példát a következő szakaszban.
Példa
Az alábbi példa azt mutatja be, hogyan használható az unió tömbökkel és objektumokkal:
param firstObject object = {
one: 'a'
two: 'b'
three: 'c1'
}
param secondObject object = {
three: 'c2'
four: 'd'
five: 'e'
}
param firstArray array = [
'one'
'two'
'three'
]
param secondArray array = [
'three'
'four'
'two'
]
output objectOutput object = union(firstObject, secondObject)
output arrayOutput array = union(firstArray, secondArray)
Az előző példában szereplő kimenet az alapértelmezett értékekkel a következő:
Név | Típus | Érték |
---|---|---|
objectOutput | Objektum | {"one": "a", "two": "b", "three": "c2", "four": "d", "five": "e"} |
arrayOutput | Tömb | ["egy", "kettő", "három", "négy"] |
Az alábbi példa a mélyegyesítési képességet mutatja be:
var firstObject = {
property: {
one: 'a'
two: 'b'
three: 'c1'
}
nestedArray: [
1
2
]
}
var secondObject = {
property: {
three: 'c2'
four: 'd'
five: 'e'
}
nestedArray: [
3
4
]
}
var firstArray = [
[
'one'
'two'
]
[
'three'
]
]
var secondArray = [
[
'three'
]
[
'four'
'two'
]
]
output objectOutput object = union(firstObject, secondObject)
output arrayOutput array = union(firstArray, secondArray)
Az előző példa kimenete a következő:
Név | Típus | Érték |
---|---|---|
objectOutput | Objektum | {"property":{"one":"a","two":"b","three":"c2","four":"d","five":"e"},"nestedArray":[3,4]} |
arrayOutput | Tömb | [["egy","két"],["három"],["négy","kettő"]] |
Ha a beágyazott tömbök egyesítve lennének, akkor az objectOutput.nestedArray értéke [1, 2, 3, 4], a arrayOutput értéke pedig [["one", "two", "three"], ["three", "four", "two"]].
Következő lépések
- Az értékekkel tagolt sztringértékek tömbjének lekéréséhez lásd a felosztást.