Funzioni matrice per Bicep
Questo articolo descrive le funzioni Bicep per operare con le matrici. Le funzioni lambda per l'uso delle matrici sono disponibili qui.
array
array(convertToArray)
Converte il valore in matrice.
Spazio dei nomi: sys.
Parametri
Parametro | Richiesto | Type | Descrizione |
---|---|---|---|
convertToArray | Sì | int, stringa, matrice o oggetto | Valore da convertire in matrice. |
Valore restituito
Matrice .
Esempio
L'esempio seguente mostra come usare la funzione matrice con tipi diversi.
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)
L'output dell'esempio precedente con i valori predefiniti è il seguente:
Nome | Type | Valore |
---|---|---|
intOutput | Matrice | [1] |
stringOutput | Matrice | ["efgh"] |
objectOutput | Matrice | [{"a": "b", "c": "d"}] |
concat
concat(arg1, arg2, arg3, ...)
Combina più matrici e restituisce la matrice concatenata. Per altre informazioni sulla combinazione di più stringhe, vedere concat.
Spazio dei nomi: sys.
Parametri
Parametro | Richiesto | Type | Descrizione |
---|---|---|---|
arg1 | Sì | array | Il primo array per la concatenazione. |
altri argomenti | No | array | Altre matrici in ordine sequenziale per la concatenazione. |
Questa funzione accetta un numero qualsiasi di matrici e le combina.
Valore restituito
Matrice di valori concatenati.
Esempio
L'esempio seguente illustra come combinare due matrici.
param firstArray array = [
'1-1'
'1-2'
'1-3'
]
param secondArray array = [
'2-1'
'2-2'
'2-3'
]
output return array = concat(firstArray, secondArray)
L'output dell'esempio precedente con i valori predefiniti è il seguente:
Nome | Type | Valore |
---|---|---|
return | Matrice | ["1-1", "1-2", "1-3", "2-1", "2-2", "2-3"] |
contains
contains(container, itemToFind)
Verifica se una matrice contiene un valore, se un oggetto contiene una chiave o se una stringa contiene una sottostringa. Il confronto fra stringhe fa distinzione tra maiuscole e minuscole. Tuttavia, quando si testa se un oggetto contiene una chiave, il confronto non fa distinzione tra maiuscole e minuscole.
Spazio dei nomi: sys.
Parametri
Parametro | Richiesto | Type | Descrizione |
---|---|---|---|
container | Sì | matrice, oggetto o stringa | Valore che contiene il valore da trovare. |
itemToFind | Sì | stringa o numero intero | Valore da trovare. |
Valore restituito
True se l'elemento viene individuato; in caso contrario, restituisce False.
Esempio
L'esempio seguente mostra come usare la funzione contains con tipi diversi:
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')
L'output dell'esempio precedente con i valori predefiniti è il seguente:
Nome | Type | Valore |
---|---|---|
stringTrue | Bool | Vero |
stringFalse | Bool | Falso |
objectTrue | Bool | Vero |
objectFalse | Bool | Falso |
arrayTrue | Bool | Vero |
arrayFalse | Bool | Falso |
empty
empty(itemToTest)
Determina se una matrice, un oggetto o una stringa è vuota o null.
Spazio dei nomi: sys.
Parametri
Parametro | Richiesto | Type | Descrizione |
---|---|---|---|
itemToTest | Sì | matrice, oggetto o stringa | Valore da controllare se è vuoto o null. |
Valore restituito
Restituisce True se il valore è vuoto o null; in caso contrario, False.
Esempio
L'esempio seguente controlla se una matrice, un oggetto e una stringa sono vuoti.
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)
L'output dell'esempio precedente con i valori predefiniti è il seguente:
Nome | Type | Valore |
---|---|---|
arrayEmpty | Bool | Vero |
objectEmpty | Bool | Vero |
stringEmpty | Bool | Vero |
stringNull | Bool | Vero |
Esempi di avvio rapido
L'esempio seguente viene estratto da un modello di avvio rapido, Rete virtuale con le impostazioni dei log di diagnostica:
@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
}
...
}
}
Nell'espressione condizionale, la funzione vuota viene usata per verificare se la matrice dnsServers è una matrice vuota.
primo
first(arg1)
Restituisce il primo elemento della matrice o il primo carattere della stringa.
Spazio dei nomi: sys.
Parametri
Parametro | Richiesto | Type | Descrizione |
---|---|---|---|
arg1 | Sì | stringa o matrice | Valore per recuperare il primo elemento o carattere. |
Valore restituito
Il tipo (string, int, array o object) del primo elemento di una matrice o il primo carattere di una stringa.
Esempio
L'esempio seguente mostra come usare la prima funzione con una matrice e una stringa.
param arrayToTest array = [
'one'
'two'
'three'
]
output arrayOutput string = first(arrayToTest)
output stringOutput string = first('One Two Three')
L'output dell'esempio precedente con i valori predefiniti è il seguente:
Nome | Type | Valore |
---|---|---|
arrayOutput | String | Uno |
stringOutput | String | O |
flatten
flatten(arrayToFlatten)
Accetta una matrice di matrici e restituisce una matrice di elementi della subarray nell'ordine originale. Le sottoarray vengono rese flat una sola volta, non in modo ricorsivo.
Spazio dei nomi: sys.
Parametri
Parametro | Richiesto | Type | Descrizione |
---|---|---|---|
arrayToFlattern | Sì | array | Matrice di sottoarray da rendere flat. |
Valore restituito
Matrice
Esempio
L'esempio seguente illustra come usare la funzione Rendere flat.
param arrayToTest array = [
['one', 'two']
['three']
['four', 'five']
]
output arrayOutput array = flatten(arrayToTest)
L'output dell'esempio precedente con i valori predefiniti è il seguente:
Nome | Type | Valore |
---|---|---|
arrayOutput | array | ['one', 'two', 'three', 'four', 'five'] |
indexOf
indexOf(arrayToSearch, itemToFind)
Restituisce un numero intero per l'indice della prima occorrenza di un elemento in una matrice. Il confronto è sensibile alle maiuscole per le stringhe.
Spazio dei nomi: sys.
Parametri
Parametro | Richiesto | Type | Descrizione |
---|---|---|---|
arrayToSearch | Sì | array | La matrice da usare per trovare l'indice dell'elemento cercato. |
itemToFind | Sì | int, stringa, matrice o oggetto | L’elemento da trovare nella matrice. |
Valore restituito
Un intero che rappresenta il primo indice dell'elemento nella matrice. L’indice è in base zero. Se l'elemento non viene trovato, viene restituito -1.
Esempi
L'esempio seguente mostra come usare le funzioni indexOf e lastIndexOf:
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)
L'output dell'esempio precedente è:
Nome | Type | Valore |
---|---|---|
index1 | int | 1 |
index2 | int | 0 |
index3 | int | 0 |
index4 | int | 2 |
index5 | int | 1 |
index6 | int | 0 |
index7 | int | 3 |
notFoundIndex1 | int | -1 |
notFoundIndex2 | int | -1 |
intersection
intersection(arg1, arg2, arg3, ...)
Restituisce una matrice o un oggetto singoli con gli elementi comuni dei parametri.
Spazio dei nomi: sys.
Parametri
Parametro | Richiesto | Type | Descrizione |
---|---|---|---|
arg1 | Sì | matrice o oggetto | Primo valore da usare per cercare elementi comuni. |
arg2 | Sì | matrice o oggetto | Secondo valore da usare per cercare elementi comuni. |
altri argomenti | No | matrice o oggetto | Valori aggiuntivi da usare per cercare elementi comuni. |
Valore restituito
Una matrice o un oggetto con elementi comuni. L'ordine degli elementi è determinato dal primo parametro della matrice.
Esempio
L'esempio seguente mostra come usare l'intersezione con matrici e oggetti:
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)
L'output dell'esempio precedente con i valori predefiniti è il seguente:
Nome | Type | Valore |
---|---|---|
objectOutput | Oggetto | {"one": "a", "three": "c"} |
arrayOutput | Matrice | ["two", "three"] |
Il primo parametro di matrice determina l'ordine degli elementi intersecati. Nell'esempio seguente viene illustrato come l'ordine degli elementi restituiti sia basato su quale matrice è la prima.
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)
L'output dell'esempio precedente è:
Nome | Type | Valore |
---|---|---|
commonUp | array | [1, 2, 3] |
commonDown | array | [3, 2, 1] |
ultimo
last(arg1)
Restituisce l'ultimo elemento della matrice o l'ultimo carattere della stringa.
Spazio dei nomi: sys.
Parametri
Parametro | Richiesto | Type | Descrizione |
---|---|---|---|
arg1 | Sì | stringa o matrice | Valore per recuperare l'ultimo elemento o carattere. |
Valore restituito
Il tipo (string, int, array o object) dell'ultimo elemento di una matrice o l'ultimo carattere di una stringa.
Esempio
L'esempio seguente mostra come usare l'ultima funzione con una matrice e una stringa.
param arrayToTest array = [
'one'
'two'
'three'
]
output arrayOutput string = last(arrayToTest)
output stringOutput string = last('One Two three')
L'output dell'esempio precedente con i valori predefiniti è il seguente:
Nome | Type | Valore |
---|---|---|
arrayOutput | String | tre |
stringOutput | String | e |
lastIndexOf
lastIndexOf(arrayToSearch, itemToFind)
Restituisce un intero per l'indice dell'ultima occorrenza di un elemento in una matrice. Il confronto è sensibile alle maiuscole per le stringhe.
Spazio dei nomi: sys.
Parametri
Parametro | Richiesto | Type | Descrizione |
---|---|---|---|
arrayToSearch | Sì | array | La matrice da usare per trovare l'indice dell'elemento cercato. |
itemToFind | Sì | int, stringa, matrice o oggetto | L’elemento da trovare nella matrice. |
Valore restituito
Un intero che rappresenta l'ultimo indice dell'elemento nella matrice. L’indice è in base zero. Se l'elemento non viene trovato, viene restituito -1.
Esempi
L'esempio seguente mostra come usare le funzioni indexOf e lastIndexOf:
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)
L'output dell'esempio precedente è:
Nome | Type | Valore |
---|---|---|
index1 | int | 1 |
index2 | int | 0 |
index3 | int | 0 |
index4 | int | 2 |
index5 | int | 1 |
index6 | int | 0 |
index7 | int | 3 |
notFoundIndex1 | int | -1 |
notFoundIndex2 | int | -1 |
length
length(arg1)
Restituisce il numero di elementi in una matrice, caratteri in una stringa o proprietà a livello radice in un oggetto.
Spazio dei nomi: sys.
Parametri
Parametro | Richiesto | Type | Descrizione |
---|---|---|---|
arg1 | Sì | matrice, stringa o oggetto | La matrice da utilizzare per ottenere il numero di elementi, la stringa da utilizzare per ottenere il numero di caratteri o l'oggetto da utilizzare per ottenere il numero di proprietà a livello radice. |
Valore restituito
Numero intero
Esempio
L'esempio seguente mostra come usare la funzione length con una matrice e una stringa:
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)
L'output dell'esempio precedente con i valori predefiniti è il seguente:
Nome | Type | Valore |
---|---|---|
arrayLength | Int | 3 |
stringLength | Int | 13 |
objectLength | Int | 4 |
Esempi di avvio rapido
L'esempio seguente viene estratto da un modello di avvio rapido, Distribuzione di Gestione API in una VNet esterna con IP pubblico:
@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)
...
}
Nell'espressione condizionale, la length
funzione controlla la lunghezza della matrice availabilityZones.
Altri esempi sono disponibili in questi file Bicep di avvio rapido:
- Backup di macchine virtuali di Resource Manager usando l'insieme di credenziali di Servizi di ripristino
- Distribuire Gestione API in zone di disponibilità
- Creare un firewall e un firewallpolicy con regole e ipgroup
- Creare una configurazione sandbox di Firewall di Azure con zone
max
max(arg1)
Restituisce il valore massimo da una matrice di numeri interi o da un elenco di numeri interi delimitato da virgole.
Spazio dei nomi: sys.
Parametri
Parametro | Richiesto | Type | Descrizione |
---|---|---|---|
arg1 | Sì | matrice di numeri interi o elenco di numeri interi delimitato da virgole | La raccolta per ottenere il valore massimo. |
Valore restituito
Numero intero che rappresenta il valore massimo.
Esempio
L'esempio seguente mostra come usare la funzione max con una matrice e un elenco di numeri interi:
param arrayToTest array = [
0
3
2
5
4
]
output arrayOutput int = max(arrayToTest)
output intOutput int = max(0,3,2,5,4)
L'output dell'esempio precedente con i valori predefiniti è il seguente:
Nome | Type | Valore |
---|---|---|
arrayOutput | Int | 5 |
intOutput | Int | 5 |
min
min(arg1)
Restituisce il valore minimo di una matrice di numeri interi o di un elenco di numeri interi delimitato da virgole.
Spazio dei nomi: sys.
Parametri
Parametro | Richiesto | Type | Descrizione |
---|---|---|---|
arg1 | Sì | matrice di numeri interi o elenco di numeri interi delimitato da virgole | La raccolta per ottenere il valore minimo. |
Valore restituito
Numero intero che rappresenta il valore minimo.
Esempio
L'esempio seguente mostra come usare la funzione min con una matrice e un elenco di numeri interi:
param arrayToTest array = [
0
3
2
5
4
]
output arrayOutput int = min(arrayToTest)
output intOutput int = min(0,3,2,5,4)
L'output dell'esempio precedente con i valori predefiniti è il seguente:
Nome | Type | Valore |
---|---|---|
arrayOutput | Int | 0 |
intOutput | Int | 0 |
range
range(startIndex, count)
Crea una matrice di numeri interi da un numero intero iniziale, contenente il numero di elementi.
Spazio dei nomi: sys.
Parametri
Parametro | Richiesto | Type | Descrizione |
---|---|---|---|
startIndex | Sì | int | Primo numero intero nella matrice. La somma di startIndex e count non deve essere maggiore di 2147483647. |
numero | Sì | int | Numero di valori interi della matrice. Deve essere un numero intero non negativo fino a 10000. |
Valore restituito
Matrice di numeri interi.
Esempio
L'esempio seguente mostra come usare la funzione range:
param startingInt int = 5
param numberOfElements int = 3
output rangeOutput array = range(startingInt, numberOfElements)
L'output dell'esempio precedente con i valori predefiniti è il seguente:
Nome | Type | Valore |
---|---|---|
rangeOutput | Matrice | [5, 6, 7] |
Esempi di avvio rapido
L'esempio seguente viene estratto da un modello di avvio rapido, Due macchine virtuali nella rete virtuale - Bilanciamento del carico interno e regole LB :
...
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: {
...
}
}]
Il file Bicep crea due risorse networkInterface e due virtualMachine.
Altri esempi sono disponibili in questi file Bicep di avvio rapido:
- Modello di più macchine virtuali con disco gestito
- Creare una macchina virtuale con più dischi dati StandardSSD_LRS vuoti
- Creare un firewall e un firewallpolicy con regole e ipgroup
- Creare un firewall di Azure con ipgroup
- Creare una configurazione sandbox di Firewall di Azure con zone
- Creare un firewall di Azure con più indirizzi IP pubblici
- Creare un bilanciamento del carico standard
- Esempio di macchina virtuale di Gestione traffico di Azure
- Creare un'automazione della sicurezza per avvisi specifici
- Macchina virtuale di SQL Server con impostazioni di archiviazione ottimizzate per le prestazioni
- Creare un account di archiviazione con più contenitori BLOB
- Creare un account di archiviazione con più condivisioni file
skip
skip(originalValue, numberToSkip)
Restituisce una matrice con tutti gli elementi dopo il numero specificato nella matrice stessa o una stringa con tutti i caratteri dopo il numero specificato nella stringa stessa.
Spazio dei nomi: sys.
Parametri
Parametro | Richiesto | Type | Descrizione |
---|---|---|---|
originalValue | Sì | stringa o matrice | Stringa o matrice da usare per i valori da ignorare. |
numberToSkip | Sì | int | Numero di elementi o caratteri da ignorare. Se il valore è minore o uguale a 0, vengono restituiti tutti gli elementi o i caratteri nel valore. Se il valore è maggiore della lunghezza della stringa o della matrice, viene restituita una stringa o una matrice vuota. |
Valore restituito
Stringa o matrice.
Esempio
L'esempio seguente ignora il numero di elementi specificato nella matrice e il numero di caratteri specificato in una stringa.
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)
L'output dell'esempio precedente con i valori predefiniti è il seguente:
Nome | Type | Valore |
---|---|---|
arrayOutput | Matrice | ["three"] |
stringOutput | String | two three |
take
take(originalValue, numberToTake)
Restituisce una matrice con il numero specificato di elementi dall'inizio della matrice, o una stringa con il numero specificato di caratteri dall'inizio della stringa.
Spazio dei nomi: sys.
Parametri
Parametro | Richiesto | Type | Descrizione |
---|---|---|---|
originalValue | Sì | stringa o matrice | Stringa o matrice da cui prendere gli elementi. |
numberToTake | Sì | int | Numero di elementi o caratteri da prendere. Se il valore è minore o uguale a 0, viene restituita una stringa o un matrice vuota. Se è maggiore della lunghezza della stringa o della matrice specificate, vengono restituiti tutti gli elementi nella stringa o nella matrice. |
Valore restituito
Stringa o matrice.
Esempio
L'esempio seguente prende il numero specificato di elementi dalla matrice e di caratteri dalla stringa.
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)
L'output dell'esempio precedente con i valori predefiniti è il seguente:
Nome | Type | Valore |
---|---|---|
arrayOutput | Matrice | ["one", "two"] |
stringOutput | String | on |
union
union(arg1, arg2, arg3, ...)
Restituisce una matrice o un oggetto singoli con tutti gli elementi dei parametri. Per le matrici, i valori duplicati vengono inclusi una sola volta. Per gli oggetti, i nomi delle proprietà duplicati vengono inclusi una sola volta.
Spazio dei nomi: sys.
Parametri
Parametro | Richiesto | Type | Descrizione |
---|---|---|---|
arg1 | Sì | matrice o oggetto | Primo valore da usare per l'aggiunta di elementi. |
arg2 | Sì | matrice o oggetto | Secondo valore da usare per l'aggiunta di elementi. |
altri argomenti | No | matrice o oggetto | Valori aggiuntivi da usare per unire gli elementi. |
Valore restituito
Una matrice o un oggetto.
Osservazioni:
La funzione di unione usa la sequenza dei parametri per determinare l'ordine e i valori del risultato.
Per le matrici, la funzione itera attraverso ogni elemento nel primo parametro e lo aggiunge al risultato, se non è già presente. Ripete quindi il processo per il secondo parametro e per gli altri parametri. Se un valore è già presente, la sua posizione precedente nella matrice viene mantenuta.
Per gli oggetti, i nomi delle proprietà e i valori del primo parametro vengono aggiunti al risultato. Per i parametri successivi, tutti i nuovi nomi vengono aggiunti al risultato. Se un parametro successivo ha una proprietà con stesso nome, tale valore sovrascrive il valore esistente. L'ordine delle proprietà non è garantito.
La funzione di unione unisce non solo gli elementi di primo livello, ma unisce in modo ricorsivo anche tutti gli oggetti annidati all'interno di essi. I valori annidati della matrice non vengono uniti. Vedere il secondo esempio nella sezione seguente.
Esempio
L'esempio seguente mostra come usare l'unione con matrici e oggetti:
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)
L'output dell'esempio precedente con i valori predefiniti è il seguente:
Nome | Type | Valore |
---|---|---|
objectOutput | Oggetto | {"one": "a", "two": "b", "three": "c2", "four": "d", "five": "e"} |
arrayOutput | Matrice | ["one", "two", "three", "four"] |
L'esempio seguente mostra la funzionalità deep merge:
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)
L'output dell'esempio precedente è:
Nome | Type | Valore |
---|---|---|
objectOutput | Oggetto | {"property":{"one":"a","two":"b","three":"c2","four":"d","five":"e"},"nestedArray":[3,4]} |
arrayOutput | Matrice | [["one","two"],["three"],["four","two"]] |
Se le matrici annidate sono state unite, il valore di objectOutput.nestedArray sarà [1, 2, 3, 4], e il valore di arrayOutput sarà [["one", "two", "three"], ["three", "four", "two"]].
Passaggi successivi
- Per ottenere una matrice di valori stringa delimitata da un valore, vedere split.