العمليات المنطقية في Bicep
تقوم العوامل المنطقية بتقييم القيم المنطقية، أو إرجاع قيم غير فارغة، أو تقييم تعبير شرطي. لتشغيل الأمثلة، استخدم Azure CLI أو Azure PowerShell لنشر ملف Bicep.
عامل تشغيل | الاسم |
---|---|
&& |
And |
|| |
Or |
! |
Not |
?? |
اندماج |
? : |
تعبير شرطي |
و &&
operand1 && operand2
يحدد ما إذا كانت كلتا القيمتين صحيحتين.
المعاملات
معامل | النوع | الوصف |
---|---|---|
operand1 |
boolean | القيمة الأولى للتحقق من صحتها. |
operand2 |
boolean | القيمة الثانية للتحقق من صحتها. |
المزيد من العمليات | boolean | يمكن تضمين المزيد من العمليات. |
قيمة الإرجاع
True
عندما تكون كلتا القيمتين صحيحتين، وإلا فسيتم إرجاع false
.
مثال
يقيم مجموعة من قيم المعلمات ومجموعة من التعبيرات.
param operand1 bool = true
param operand2 bool = true
output andResultParm bool = operand1 && operand2
output andResultExp bool = 10 >= 10 && 5 > 2
الإخراج من المثال:
Name | نوع | القيمة |
---|---|---|
andResultParm |
boolean | صحيح |
andResultExp |
boolean | صحيح |
لتجنب خاصية تعبير اللغة 'foo' غير موجودة استثناء مع كائنات Bicep، يمكنك استخدام عامل التشغيل المنطقي و كما هو موضح في المثال التالي:
param objectToTest object = {
one: 1
two: 2
three: 3
}
output bar bool = contains(objectToTest, 'four') && objectToTest.four == 4
Or ||
operand1 || operand2
يحدد ما إذا كانت القيمة صحيحة.
المعاملات
معامل | النوع | الوصف |
---|---|---|
operand1 |
boolean | القيمة الأولى للتحقق من صحتها. |
operand2 |
boolean | القيمة الثانية للتحقق من صحتها. |
المزيد من العمليات | boolean | يمكن تضمين المزيد من العمليات. |
قيمة الإرجاع
True
عندما تكون أي من القيمتين صحيحة، وإلا يتم إرجاع false
.
مثال
يقيم مجموعة من قيم المعلمات ومجموعة من التعبيرات.
param operand1 bool = true
param operand2 bool = false
output orResultParm bool = operand1 || operand2
output orResultExp bool = 10 >= 10 || 5 < 2
الإخراج من المثال:
Name | نوع | القيمة |
---|---|---|
orResultParm |
boolean | صحيح |
orResultExp |
boolean | صحيح |
لتجنب استثناء فهرس صفيف خاصية تعبير اللغة 'x' خارج الحدود ، يمكنك استخدام عامل التشغيل المنطقي Or كما هو موضح في المثال التالي:
param emptyArray array = []
param numberArray array = [1, 2, 3]
output foo bool = empty(emptyArray) || emptyArray[0] == 'bar'
output bar bool = length(numberArray) >= 3 || numberArray[3] == 4
Not !
!boolValue
ينفي قيمة منطقية.
معامل
معامل | النوع | الوصف |
---|---|---|
boolValue |
boolean | القيمة المنطقية التي تم نفيها. |
قيمة الإرجاع
ينفي القيمة الأولية ويعيد قيمة منطقية. إذا كانت القيمة الأولية هي true
، فسيتم إرجاع false
.
مثال
عامل التشغيل not
ينفي قيمة. يمكن التفاف القيم بأقواس.
param initTrue bool = true
param initFalse bool = false
output startedTrue bool = !(initTrue)
output startedFalse bool = !initFalse
الإخراج من المثال:
Name | نوع | القيمة |
---|---|---|
startedTrue |
boolean | true |
startedFalse |
boolean | صحيح |
Coalesce ??
operand1 ?? operand2
ترجع أول قيمة غير فارغة من العمليات.
المعاملات
معامل | النوع | الوصف |
---|---|---|
operand1 |
سلسلة، عدد صحيح، منطقي، كائن، صفيف | القيمة المراد اختبارها لـ null . |
operand2 |
سلسلة، عدد صحيح، منطقي، كائن، صفيف | القيمة المراد اختبارها لـ null . |
المزيد من العمليات | سلسلة، عدد صحيح، منطقي، كائن، صفيف | القيمة المراد اختبارها لـ null . |
قيمة الإرجاع
إرجاع أول قيمة غير فارغة. السلاسل الفارغة والمصفوفات الفارغة والكائنات الفارغة ليست null
ويتم إرجاع قيمة <فارغة>.
مثال
تُرجع عبارات الإخراج القيم غير الخالية. يجب أن يتطابق نوع الإخراج مع النوع الموجود في المقارنة وإلا فسيتم إنشاء خطأ.
param myObject object = {
isnull1: null
isnull2: null
string: 'demoString'
emptystr: ''
integer: 10
}
output nonNullStr string = myObject.isnull1 ?? myObject.string ?? myObject.isnull2
output nonNullInt int = myObject.isnull1 ?? myObject.integer ?? myObject.isnull2
output nonNullEmpty string = myObject.isnull1 ?? myObject.emptystr ?? myObject.string ?? myObject.isnull2
الإخراج من المثال:
Name | نوع | القيمة |
---|---|---|
nonNullStr |
سلسلة | demoString |
nonNullInt |
العدد الصحيح | 10 |
nonNullEmpty |
سلسلة | <فارغ> |
Conditional expression ? :
condition ? true-value : false-value
يقيّم الشرط ويعيد قيمة سواء كان الشرط صحيحاً أو خاطئاً.
المعاملات
معامل | النوع | الوصف |
---|---|---|
condition |
boolean | شرط للتقييم على أنه صواب أو خطأ. |
true-value |
سلسلة، عدد صحيح، منطقي، كائن، صفيف | القيمة عندما يكون الشرط صحيحاً. |
false-value |
سلسلة، عدد صحيح، منطقي، كائن، صفيف | القيمة عندما يكون الشرط خطأً. |
مثال
يقوم هذا المثال بتقييم أول معلمة وإرجاع قيمة سواء كان الشرط صحيحاً أو خطأً.
param initValue bool = true
output outValue string = initValue ? 'true value' : 'false value'
الإخراج من المثال:
Name | نوع | القيمة |
---|---|---|
outValue |
سلسلة | قيمة حقيقية |
الخطوات التالية
- لإنشاء ملف Bicep، راجع التشغيل السريع: إنشاء ملف Bicep باستخدام Visual Studio Code.
- للحصول على معلومات حول كيفية حل أخطاء نوع Bicep، راجع أي دالة لـ Bicep.
- لمقارنة بناء الجملة لـ Bicep وJSON، راجع مقارنة JSON وBicep للقوالب.
- للحصول على أمثلة لوظائف Bicep، راجع وظائف Bicep.