freeCodeCamp/guide/arabic/javascript/booleans/index.md

5.2 KiB

title localeTitle
Boolean منطقية

منطقية

Booleans هي نوع بيانات بدائي شائع الاستخدام في لغات برمجة الكمبيوتر. بحكم التعريف ، يحتوي المنطقي على قيمتين محتملتين: true أو false .

في Javascript ، غالبًا ما يكون هناك نوع الإكراه الضمني للقيمة المنطقية. إذا كان لديك مثلاً عبارة if تتحقق من تعبير معين ، فسيتم فرض هذا التعبير على قيمة منطقية:

var a = 'a string'; if (a) { console.log(a); // logs 'a string' }

هناك بعض القيم القليلة التي سيتم فرضها على false:

  • كاذبة (غير مجبرة حقًا لأنها خاطئة بالفعل)
  • لا شيء
  • غير محدد
  • نان
  • 0
  • '' (سلسلة فارغة)

سيتم فرض جميع القيم الأخرى إلى true. عندما تُكرَه القيمة إلى قيمة منطقية ، فإننا نطلق عليها أيضًا إما "كاذبة" أو "صادقة".

إحدى الطرق التي يتم بها استخدام نوع الإكراه هي استخدام مشغلي (أو || ) و ( && ):

`var a = 'word'; var b = false; var c = true; var d = 0 var e = 1 var f = 2 var g = null

console.log(a || b); // 'word' console.log(c || a); // true console.log(b || a); // 'word' console.log(e || f); // 1 console.log(f || e); // 2 console.log(d || g); // null console.log(g || d); // 0 console.log(a && c); // true console.log(c && a); // 'word' `

كما ترى ، يفحص المشغل أو العامل الأول. إذا كان هذا صحيحًا أو صريحًا ، فسيتم إرجاعه على الفور (وهذا هو سبب حصولنا على كلمة في الحالة الأولى وصحيح في الحالة الثانية). إذا لم يكن صحيحا أو صائبا ، فإنه يعيد المعامل الثاني (وهذا هو السبب في أننا نحصل على كلمة في الحالة الثالثة).

مع المشغل ويعمل بطريقة مماثلة ، ولكن "و" ليكون صحيحا ، يجب أن يكون كلا المعاملين صائبين. لذلك ، ستعود دائمًا إلى المعامل الثاني إذا كان كلاهما صحيحًا / صريحًا ، وإلا فسيظهر خطأ. وهذا هو السبب في أننا في الحالة الرابعة أصبحنا صادقين وفي الحالة الأخيرة حصلنا على "كلمة".

الكائن المنطقي

يوجد أيضًا كائن JavaScript أصلي يلتف حول قيمة. القيمة التي تم تمريرها عند تحويل المعلمة الأولى إلى قيمة منطقية ، إذا لزم الأمر. إذا تم حذف القيمة ، 0 ، أو 0 ، أو خالية ، أو false ، أو NaN ، أو undefined ، أو السلسلة الفارغة ("") ، فإن الكائن له قيمة أولية خاطئة. جميع القيم الأخرى ، بما في ذلك أي كائن أو السلسلة "false" ، تقوم بإنشاء كائن بقيمة أولية صحيحة.

لا تخلط بين القيم المنطقية البدائية الصواب والخطأ مع القيم الحقيقية والخطئة للكائن المنطقي.

المزيد من التفاصيل

يتم تقييم أي كائن لا تكون قيمته غير محددة أو خالية ، بما في ذلك كائن منطقي قيمته غير صحيح ، إلى true عند تمريره إلى بيان شرطي. إذا كان هذا صحيحًا ، فسيؤدي هذا إلى تنفيذ الوظيفة. على سبيل المثال ، يتم تقييم الشرط الموجود في العبارة if في الحالة التالية:

var x = new Boolean(false); if (x) { // this code is executed }

لا ينطبق هذا السلوك على الأوليات البولية. على سبيل المثال ، يتم تقييم الشرط الموجود في العبارة if في حالة الخطأ:

var x = false; if (x) { // this code is not executed }

لا تستخدم كائنًا منطقيًا لتحويل قيمة غير منطقية إلى قيمة منطقية. بدلاً من ذلك ، استخدم Boolean كدالة لتنفيذ هذه المهمة:

var x = Boolean(expression); // preferred var x = new Boolean(expression); // don't use

إذا قمت بتحديد أي كائن ، بما في ذلك كائن منطقي قيمته غير كاذبة ، كالقيمة الأولية لكائن Boolean ، فإن الكائن المنطقي الجديد يحتوي على قيمة true.

var myFalse = new Boolean(false); // initial value of false var g = new Boolean(myFalse); // initial value of true var myString = new String('Hello'); // string object var s = new Boolean(myString); // initial value of true

لا تستخدم كائن منطقي بدلاً من بدائي منطقي.

مصادر