Bicep-operatorer
Den här artikeln beskriver Bicep-operatorerna. Operatorer används för att beräkna värden, jämföra värden eller utvärdera villkor. Det finns sex typer av Bicep-operatorer:
Operatorprioritet och associativitet
Operatorerna nedan visas i fallande prioritetsordning (desto högre position desto högre prioritet). Operatorer som anges på samma nivå har samma prioritet.
Symbol | Typ av åtgärd | Associativitet |
---|---|---|
( ) [ ] . :: |
Parenteser, matrisindexerare, egenskapsåtkomster och kapslad resursåtkomst | Vänster till höger |
! - |
Enställig | Höger till vänster |
% * / |
Multiplikativ | Vänster till höger |
+ - |
Additiv | Vänster till höger |
<= < > >= |
Relation | Vänster till höger |
== != =~ !~ |
Likhet | Vänster till höger |
&& |
Logiskt AND | Vänster till höger |
|| |
Logiskt OR | Vänster till höger |
?? |
Coalesce | Vänster till höger |
? : |
Villkorsuttryck (ternary) | Höger till vänster |
Parentes
Om du omsluter ett uttryck mellan parenteser kan du åsidosätta standardprioritet för Bicep-operatorn. Uttrycket x + y / z
utvärderar till exempel divisionen först och sedan tillägget. Uttrycket (x + y) / z
utvärderar dock tillägget först och division två.
Accessor
Accessor-operatorerna används för att komma åt kapslade resurser och egenskaper för objekt.
Operator | Name | Beskrivning |
---|---|---|
[] |
Indexåtkomst | Få åtkomst till ett element i en matris eller egenskap i ett objekt. |
. |
Funktionsåtkomst | Anropa en funktion på en resurs. |
:: |
Kapslad resursåtkomst | Få åtkomst till en kapslad resurs utanför den överordnade resursen. |
. |
Egenskapsåtkomst | Åtkomstegenskaper för ett objekt. |
Jämförelse
Jämförelseoperatorerna jämför värden och returnerar antingen true
eller false
.
Operator | Name | Beskrivning |
---|---|---|
>= |
Större än eller lika med | Utvärderar om det första värdet är större än eller lika med det andra värdet. |
> |
Större än | Utvärderar om det första värdet är större än det andra värdet. |
<= |
Mindre än eller lika med | Utvärderar om det första värdet är mindre än eller lika med det andra värdet. |
< |
Mindre än | Utvärderar om det första värdet är mindre än det andra värdet. |
== |
Lika med | Utvärderar om två värden är lika. |
!= |
Inte lika med | Utvärderar om två värden inte är lika med. |
=~ |
Lika skiftlägesokänsligt | Ignorerar skiftläge för att avgöra om två värden är lika. |
!~ |
Inte lika skiftlägesokänsligt | Ignorerar skiftläge för att avgöra om två värden inte är lika med. |
Logiskt
De logiska operatorerna utvärderar booleska värden, returnerar värden som inte är null eller utvärderar ett villkorsuttryck.
Operator | Name | Beskrivning |
---|---|---|
&& |
Och | Returnerar true om alla värden är sanna. |
|| |
Eller | Returnerar true om något av värdena är sanna. |
! |
Inte | Negera ett booleskt värde. Tar en operand. |
?? |
Sammansting | Returnerar det första värdet som inte är null. |
? : |
Villkorsuttryck | Utvärderar ett villkor för sant eller falskt och returnerar ett värde. |
Null-förlåtande
Operatorn null-forgiving utelämnar alla nullbara varningar för föregående uttryck.
Operator | Name | Beskrivning |
---|---|---|
! |
Null-förlåtande | Utelämnar alla null-varningar för föregående uttryck. |
Numerisk
De numeriska operatorerna använder heltal för att utföra beräkningar och returnera heltalsvärden.
Operator | Name | Beskrivning |
---|---|---|
* |
Multiplicera | Multiplicerar två heltal. |
/ |
Dela | Delar upp ett heltal med ett heltal. |
% |
Modulo | Delar upp ett heltal med ett heltal och returnerar resten. |
+ |
Lägg till | Lägger till två heltal. |
- |
Subtrahera | Subtraherar ett heltal från ett annat heltal. Tar två operander. |
- |
Minus (unary) | Multiplicerar ett heltal -1 med . Tar en operand. |
Anteckning
Subtrahera och minus använd samma operator. Funktionen är annorlunda eftersom subtrahera använder två operander och minus använder en operand.
Safe-dereference
Operatorn safe-dereference hjälper till att förhindra fel som kan uppstå när du försöker komma åt egenskaper eller element utan att känna till deras existens eller värde.
Operator | Name | Beskrivning |
---|---|---|
<base>.?<property> , <base>[?<index>] |
Safe-dereference | Använder en objektmedlemsåtkomst eller en matriselementåtkomståtgärd på dess operand endast om operand utvärderas till icke-null, annars returneras null . |
Nästa steg
- Information om hur du skapar en Bicep-fil finns i Snabbstart: Skapa Bicep-filer med Visual Studio Code.
- Information om hur du löser Bicep-typfel finns i Alla funktioner för Bicep.
- Om du vill jämföra syntax för Bicep och JSON läser du Jämföra JSON och Bicep för mallar.
- Exempel på Bicep-funktioner finns i Bicep-funktioner.