Operator Bicep
Artikel ini menjelaskan operator Bicep. Operator digunakan untuk menghitung nilai, membandingkan nilai, atau mengevaluasi kondisi. Ada enam jenis operator Bicep:
Asosiasivitas dan prioritas operator
Operator di bawah ini tercantum dalam urutan prioritas menurun (semakin tinggi posisi, semakin tinggi prioritas). Operator yang tercantum pada tingkat yang sama memiliki prioritas yang sama.
Simbol | Jenis Operasi | Asosiasivitas |
---|---|---|
( ) [ ] . :: |
Tanda kurung, pengindeks array, pengakses properti, dan pengakses sumber daya berlapis | Kiri ke kanan |
! - |
Unary | Kanan ke kiri |
% * / |
Perkalian | Kiri ke kanan |
+ - |
Penambahan | Kiri ke kanan |
<= < > >= |
Relasional | Kiri ke kanan |
== != =~ !~ |
Persamaan | Kiri ke kanan |
&& |
Logika AND | Kiri ke kanan |
|| |
Logika OR | Kiri ke kanan |
?? |
Coalesce | Kiri ke kanan |
? : |
Ungkapan bersyarat (terner) | Kanan ke kiri |
Tanda Kurung
Menyertakan ekspresi di antara tanda kurung memungkinkan Anda mengganti prioritas operator Bicep default. Misalnya, ekspresi x + y / z
mengevaluasi pembagian terlebih dahulu, lalu penjumlahan. Namun, ekspresi (x + y) / z
mengevaluasi penjumlahan terlebih dahulu, lalu pembagian.
Pengakses
Operator pengakses digunakan untuk mengakses sumber daya berlapis dan properti pada objek.
Operator | Nama | Deskripsi |
---|---|---|
[] |
Pengakses indeks | Mengakses elemen {i>array |
. |
Pengakses fungsi | Menghubungi fungsi pada sumber daya. |
:: |
Pengakses sumber daya bersarang | Akses sumber daya berlapis dari luar sumber daya induk. |
. |
Pengakses properti | Mengakses properti suatu objek. |
Perbandingan
Operator perbandingan membandingkan nilai dan menampilkan salah satu dari true
atau false
.
Operator | Nama | Deskripsi |
---|---|---|
>= |
Greater than or equal | Memeriksa apakah nilai pertama lebih besar atau sama dengan nilai kedua. |
> |
Lebih besar dari | Memeriksa apakah nilai pertama lebih besar dari nilai kedua. |
<= |
Less dari atau sama dengan | Memeriksa apakah nilai pertama lebih kecil atau sama dengan nilai kedua. |
< |
Kurang dari | Memeriksa apakah nilai pertama lebih kecil dari nilai kedua. |
== |
Sama dengan | Mengevaluasi apakah dua nilai sama. |
!= |
Tidak sama dengan | Mengevaluasi apakah dua nilai tidak sama. |
=~ |
Tidak peka huruf besar atau kecil sama dengan | Mengabaikan kasus untuk menentukan apakah dua nilai sama. |
!~ |
Not equal case-insensitive | Mengabaikan kasus untuk menentukan apakah dua nilai tidak sama. |
Logika
Operator logis mengevaluasi nilai boolean, menampilkan nilai bukan null, atau mengevaluasi ekspresi bersyarat.
Operator | Nama | Deskripsi |
---|---|---|
&& |
Dan | Menampilkan true jika semua nilai benar. |
|| |
Atau | Menampilkan true jika salah satu nilai benar. |
! |
Tidak | Meniadakan nilai boolean. Ambil satu operand. |
?? |
Gabungkan | Mengembalikan nilai bukan null pertama. |
? : |
Ekspresi bersyarat | Mengevaluasi kondisi untuk benar atau salah dan menampilkan nilai. |
Pengampunan null
Operator pengampunan null menekan semua peringatan nullable untuk ekspresi sebelumnya.
Operator | Nama | Deskripsi |
---|---|---|
! |
Pengampunan null | Menekan semua peringatan nullable untuk ekspresi sebelumnya. |
Numerik
Operator numerik menggunakan bilangan bulat untuk melakukan penghitungan dan menampilkan nilai bilangan bulat.
Operator | Nama | Deskripsi |
---|---|---|
* |
Perkalian | Mengalikan dua bilangan bulat. |
/ |
Pembagian | Membagi bilangan bulat dengan bilangan bulat. |
% |
Modulo | Membagi bilangan bulat dengan bilangan bulat dan menampilkan sisanya. |
+ |
Tambahkan | Menambahkan dua bilangan bulat. |
- |
Pengurangan | Kurangi satu bilangan bulat dari bilangan bulat lain. Ambil dua operand. |
- |
Minus (unary) | Mengalikan bilangan bulat dengan -1 . Ambil satu operand. |
Catatan
Pengurangan dan minus menggunakan operator yang sama. Fungsinya berbeda karena pengurangan menggunakan dua operand dan minus menggunakan satu operand.
Dereferensi aman
Operator dereferensi aman membantu mencegah kesalahan yang dapat terjadi saat mencoba mengakses properti atau elemen tanpa pengetahuan yang tepat tentang keberadaan atau nilainya.
Operator | Nama | Deskripsi |
---|---|---|
<base>.?<property> , <base>[?<index>] |
Dereferensi aman | Menerapkan akses anggota objek atau operasi akses elemen array ke operand-nya hanya jika operand tersebut mengevaluasi ke non-null, jika tidak, itu mengembalikan null . |
Sebar
Operator spread digunakan untuk memperluas array atau objek yang dapat diulang ke dalam elemen individual. Operator spread memungkinkan Anda memanipulasi array atau objek dengan mudah dengan menyebarkan elemen atau propertinya ke dalam array atau objek baru.
Operator | Nama | Deskripsi |
---|---|---|
... |
Penyebaran | Memungkinkan perluasan array dan objek yang dapat diulang ke dalam elemen atau properti individual. |
Langkah berikutnya
- Untuk membuat file Bicep, lihat Mulai cepat: Membuat file Bicep dengan Visual Studio Code.
- Untuk informasi tentang cara mengatasi kesalahan jenis Bicep, lihat Fungsi untuk Bicep.
- Untuk membandingkan sintaks untuk Bicep dan JSON, lihat Membandingkan JSON dan Bicep untuk templat.
- Untuk contoh fungsi Bicep, lihat Fungsi Bicep.