أي عامل مساوي يجب استخدامه في مقارنات JavaScript؟ == مقابل ===

يمكنك استخدام عاملين مختلفين للتحقق من تساوي الكائن. هم انهم==و===. أي واحد يستخدم؟

في JavaScript ، يمكنك استخدام عاملين مختلفين للتحقق من تساوي الكائنات. هم انهم==و===.

إنهم يفعلون نفس الشيء بشكل أساسي ، لكن هناك فرق كبير بين الاثنين.

===سوف يتحقق من المساواة بين قيمتين. إذا كانت كائنات ، يجب أن تكون من نفس النوع. لم تتم كتابة JavaScript ، كما تعلم ، ولكن لديك بعض الأنواع الأساسية التي يجب أن تعرفها.

على وجه الخصوص لدينا أنواع القيم (Boolean و null و undefined و String و Number) وأنواع المراجع (Array ، و Object ، و Function).

إذا لم تكن قيمتان من نفس النوع ،===سيعود خطأ.

إذا كانوا من نفس النوع ، فسيقوم JavaScript بالتحقق من المساواة.

معأنواع المراجع، هذا يعني أن القيم تحتاج إلى الرجوع إلىنفسكائن / مجموعة / وظيفة. لا أحد له نفس القيم: نفس القيم.

==مختلف لأنه سيحاول تحويل الأنواع إلى مطابقة.

هذا هو سبب حصولك على نتائج مثل

false == '0'  //true
false === '0' //false
null == undefined //true
null === undefined  //false

من واقع خبرتي ، في 97٪ من الحالات التي تريد استخدامها===، ما لم==يوفر بالضبط ما تريد. لديها عيوب أقل وحالات حافة.

الشيء نفسه ينطبق على!=و!==، التي تؤدي نفس الشيء ، لكنها تنفى.

دائما الافتراضي إلى!==.


المزيد من دروس js: