Bicep-Operatoren
In diesem Artikel werden die Bicep-Operatoren beschrieben. Operatoren werden verwendet, um Werte zu berechnen, Werte zu vergleichen oder Bedingungen auszuwerten. Es gibt sechs Arten von Bicep-Operatoren:
Operatorrangfolge und Assoziativität
Die folgenden Operatoren werden in absteigender Reihenfolge der Rangfolge aufgeführt (je höher die Position, desto höher ist die Rangfolge). Operatoren auf derselben Ebene haben den gleichen Rang.
Symbol | Vorgangstyp | Assoziativität |
---|---|---|
(
)
[
]
.
::
|
Klammern, Arrayindexer, Eigenschaftenaccessoren und Accessor für geschachtelter Ressourcen | Von links nach rechts |
!
-
|
Unär | Von rechts nach links |
%
*
/
|
Multiplikativ | Von links nach rechts |
+
-
|
Additiv | Von links nach rechts |
<=
<
>
>=
|
Relational | Von links nach rechts |
==
!=
=~
!~
|
Gleichheit | Von links nach rechts |
&& |
Logisches AND | Von links nach rechts |
|| |
Logisches OR | Von links nach rechts |
?? |
Coalesce | Von links nach rechts |
?
:
|
Bedingter Ausdruck (ternär) | Von rechts nach links |
Klammern
Wenn Sie einen Ausdruck in Klammern einschließen, können Sie die Standardpriorität des Bicep-Operators außer Kraft setzen. Der Ausdruck x + y / z
wertet zum Beispiel zuerst die Division und dann die Addition aus. Der Ausdruck (x + y) / z
wertet jedoch zuerst die Addition und dann die Division aus.
Accessor
Die Accessoroperatoren werden verwendet, um auf geschachtelte Ressourcen und Eigenschaften von Objekten zuzugreifen.
Operator | Name | BESCHREIBUNG |
---|---|---|
[] |
Indexaccessor | Zugriff auf ein Element eines Arrays oder einer Eigenschaft eines Objekts. |
. |
Funktionsaccessor | Aufruf einer Funktion für eine Ressource |
:: |
Accessor für geschachtelte Ressourcen | Zugriff auf eine geschachtelte Ressource von außerhalb der übergeordneten Ressource |
. |
Eigenschaftenaccessor | Zugriff auf Eigenschaften eines Objekts |
Vergleich
Die Vergleichsoperatoren vergleichen Werte und geben entweder true
oder false
zurück.
Operator | Name | BESCHREIBUNG |
---|---|---|
>= |
Größer oder gleich | Wertet aus, ob der erste Wert größer oder gleich dem zweiten Wert ist. |
> |
Größer als | Wertet aus, ob der erste Wert größer ist als der zweite Wert. |
<= |
Kleiner oder gleich | Wertet aus, ob der erste Wert kleiner oder gleich dem zweiten Wert ist. |
< |
Kleiner als | Wertet aus, ob der erste Wert kleiner ist als der zweite Wert. |
== |
Ist gleich | Wertet aus, ob zwei Werte gleich sind. |
!= |
Ungleich | Wertet aus, ob zwei Werte nicht gleich sind. |
=~ |
Gleiche Groß-/Kleinschreibung wird nicht berücksichtigt | Ignoriert die Groß-/Kleinschreibung, um zu ermitteln, ob zwei Werte gleich sind. |
!~ |
Ungleiche Groß-/Kleinschreibung wird nicht berücksichtigt | Ignoriert die Groß-/Kleinschreibung, um zu ermitteln, ob zwei Werte nicht gleich sind. |
Logisch
Die logischen Operatoren werten boolesche Werte aus, geben Werte zurück, die ungleich NULL sind, oder werten einen bedingten Ausdruck aus.
Operator | Name | BESCHREIBUNG |
---|---|---|
&& |
Und | Gibt true zurück, wenn alle Werte WAHR sind. |
|| |
Oder | Gibt true zurück, wenn einer der beiden Werte WAHR ist. |
! |
Not | Negiert einen booleschen Wert. Nimmt einen Operanden. |
?? |
Koaleszieren (COALESCE) | Gibt den ersten Wert zurück, der ungleich NULL ist. |
?
:
|
Bedingter Ausdruck | Wertet eine Bedingung auf WAHR oder FALSCH aus und gibt einen Wert zurück. |
Null-forgiving
Der Operator null-forgiving unterdrückt alle Warnungen, die Nullwerte zulassen, für den vorherigen Ausdruck.
Operator | Name | BESCHREIBUNG |
---|---|---|
! |
Null-forgiving | Unterdrückt alle Warnungen, die Nullwerte zulassen, für den vorherigen Ausdruck. |
Numeric
Die numerischen Operatoren verwenden zur Ausführung von Berechnungen ganze Zahlen und geben ganzzahlige Werte zurück.
Operator | Name | BESCHREIBUNG |
---|---|---|
* |
Multiplizieren | Multipliziert zwei ganze Zahlen. |
/ |
Dividieren | Dividiert eine ganze Zahl durch eine ganze Zahl. |
% |
Modulo | Dividiert eine ganze Zahl durch eine ganze Zahl und gibt den Rest zurück. |
+ |
Add (Hinzufügen) | Addiert zwei ganze Zahlen. |
- |
Subtrahieren | Subtrahiert eine Ganzzahl von einer anderen Ganzzahl. Benötigt zwei Operanden. |
- |
Minus (unär) | Multipliziert eine ganze Zahl mit -1 . Nimmt einen Operanden. |
Hinweis
Subtrahieren und Minus verwenden denselben Operator. Die Funktionalität ist unterschiedlich, weil Subtrahieren zwei Operanden und Minus einen Operanden verwendet.
Safe-dereference
Mithilfe des Operators „safe-dereference“ können Fehler vermieden werden, wenn versucht wird, auf Eigenschaften oder Elemente zuzugreifen, wenn deren Existenz oder Wert nicht genau bekannt ist.
Operator | Name | BESCHREIBUNG |
---|---|---|
<base>.?<property> , <base>[?<index>] |
Safe-dereference | Erlaubt einem Objekt den Memberzugriff oder einem Array den Elementzugriff auf seinen Operanden nur dann, wenn dieser Operand mit ungleich NULL ausgewertet wird. Andernfalls gibt er null zurück. |
Spread
Der spread-Operator wird verwendet, um ein iterierbares Array oder Objekt auf einzelne Elemente zu erweitern. Mit dem spread-Operator können Sie Arrays oder Objekte ganz einfach bearbeiten, indem Sie ihre Elemente oder Eigenschaften auf neue Arrays oder Objekte verteilen.
Operator | Name | Beschreibung |
---|---|---|
... |
Spread | Ermöglicht die Erweiterung von iterierbaren Arrays und Objekten auf einzelne Elemente oder Eigenschaften. |
Nächste Schritte
- Informationen zum Erstellen einer Bicep-Datei finden Sie unter Schnellstart: Erstellen von Bicep-Dateien mit Visual Studio Code.
- Informationen zum Beheben von Bicep-Typfehlern finden Sie unter any-Funktion für Bicep.
- Einen Vergleich der Syntax für Bicep und JSON finden Sie unter Vergleichen von JSON mit Bicep für Vorlagen.
- Beispiele zu Bicep-Funktionen finden Sie unter Bicep-Funktionen.