العنصر الأساسي المنطقي هو نوع بيانات منطقي يتضمّن قيمتَين فقط: true
و
false
.
عنصر منطقي
جميع القيم في JavaScript هي true
أو false
بشكل ضمني. يمكن استخدام عنصر Boolean
لفرض قيمة على true
أو false
منطقي، استنادًا إلى الحالة الضمنية "صحيح" أو "خطأ" لهذه القيمة:
Boolean( "A string literal" );
> true
تشمل القيم التي تؤدي إلى false
العناصر 0
وnull
وundefined
وNaN
وسلسلة خالية (""
) وقيمة تم حذفها وقيمة منطقية false
. تؤدي جميع القيم الأخرى إلى
true
.
Boolean( NaN );
> false
Boolean( -0 );
> false
Boolean( 5 );
> true
Boolean( "false" ); // the value `"false"` is a string, and therefore implicitly true.
> true
تجنَّب استخدام كائن Boolean
كدالة تنشئة. وينشئ كائنًا
يحتوي على قيمة منطقية، وليس العنصر المنطقي الذي تتوقّعه:
const falseBoolean = Boolean( 0 );
const falseObject = new Boolean( 0 );
console.log( falseBoolean );
> false
console.log( falseObject );
> Boolean { false }
falseObject.valueOf();
> false
بما أنّ جميع العناصر صحيحة بطبيعتها،
يتم دائمًا تقييم العنصر المنطقي الناتج بشكل فضفاض على أنّه صحيح، حتى إذا كان
يحتوي على قيمة false
:
const falseBoolean = Boolean( 0 );
const falseObject = new Boolean( 0 );
console.log( falseBoolean == true );
> false
console.log( falseObject == true );
> false
console.log( !!falseObject );
> true
التحقّق من فهمك
أي مما يلي يعرض false
؟
0
null
"none"