العامل === (المساواة الصارمة) يقارن القيمة والنوع معًا، دون أي تحويل:
const a = 1;
const b = "1";
a === b; // false (number vs string)
a == b; // true (== converts "1" to 1 first)
لماذا === أفضل غالبًا؟
== يحوّل الأنواع قبل المقارنة، فتظهر نتائج مفاجئة:
0 == ""; // true
null == undefined; // true
"0" == false; // true
مع === لا توجد مفاجآت: إذا اختلف النوع فالنتيجة false.
والعكس منه !==. القاعدة البسيطة: استخدم === و!== دائمًا، إلا إذا كان لديك سبب واضح لغير ذلك.