خالد مرتضى نشر 7 سبتمبر 2021 أرسل تقرير نشر 7 سبتمبر 2021 في لغة الجافاسكريبت ما الفرق بين == و === 1 اقتباس
1 Ziyad Hasan نشر 7 سبتمبر 2021 أرسل تقرير نشر 7 سبتمبر 2021 (معدل) == تستخدم مع if condition لكي تحدد إذا كان هناك فرق بين المتغيران أو لا يوجد فرق بدون الإعتماد على نوع المتغيران بينما === تستخدم مع if condition لكي تحدد إذا كان هناك فرق بين المتغيران أو لا يوجد فرق و لكن تعتمد على نوع المتغيران كما في المثال الأتي let age='1' let age2=1 if(age == age2){ console.log('good') } if(age === age2){ console.log('nice') } لاحظ في المثال السابق أن age لها قمية 1 و لكن النوع string اما age2 لها قيمة 1 و لكن النوع number لذلك الناتج سوف يكون good في الكونسول لأن == لا تعتمد على نوع المتغيران تم التعديل في 7 سبتمبر 2021 بواسطة Ziyad Hasan اقتباس
2 شرف الدين حفني نشر 7 سبتمبر 2021 أرسل تقرير نشر 7 سبتمبر 2021 كلا المعاملان وظيفتهم المقارنة, الفرق أن ال=== تقوم بمقارنة القيمة ونوع البيانات , بينما == تقوم بمقارنة القيمة فقط فمثلا 0=="0" تساوي true لأن ال== تقارن القيمة فقط , وكلاً منهم قيمتها صفراً بينما 0==="0" تساوي false لأن ال=== تقارن القيمة ونوع البيانات, وهنا نوع البيانات مختلف, احدهما نوعه رقم والأخر سلسلة نصية/ حرف والجدول التالي يوضح بعض الأشياء التي قد تسبب الحيرة للمبرمج أثناء التعامل مع هذان المعاملان 0 == false // حقيقي, لأن قيمة ال"غير حقيقي" تساوي صفراً 0 === false // غير حقيقي, لأن على الرغم أن قيمة ال"غير حقيقي" تساوي صفراً , إلا أن نوعها ليس رقم وإنما Boolean 1 == "1" // حقيقي, لأ، كلاً منهما قيمته ب1 على الرغم من إختﻻف نوع البيانات 1 === "1" // غير حقيقي لأننا نستخدم علامة المساواة الثﻻثية والتي تهتم بنوع البيانات, فعلى الرغم أن كلاً منهم قيمته 1 إﻻ أن كلاً منهما له نوع بيانات مختلف null == undefined // حقيقي لأن لهم نفس القيمة null === undefined // غير حقيقي لأن عﻻمة المساواة الثلاثية تتوجب أن يكون لهم نفس نوع البيانات '0' == false // حقيقي لأن عﻻمة المساواة الثنائية تهتم بالقيمة فقط , وقيمة ال"غير حقيقي" بصفراً '0' === false // غير حقيقي, لأن عﻻمة المساواة الثﻻثية تهتم بنوع البيانات, وهنا النوع مختلف اقتباس
0 Hassan Hedr نشر 8 سبتمبر 2021 أرسل تقرير نشر 8 سبتمبر 2021 "==" يدل على التساوي في القيمة بين متحولين، اليك بعض القواعد (مع قواعد قد تجدها غريبة) "1" == 1; // true 0 == false; // true null == undefined // true 0 == null; // false 0 == undefined; // false "===" يعمل نفس عمل المعامل السابق لكن يضاف شرط للتساوي وهو تساوي نوع المتحولين "1" === 1; // false 0 === false; // false null === undefined // false 0 === null; // false 0 === undefined; // false الأفضل دائما استخدام المعامل "===" لتجنب أخطاء كثيرة قد تقع بها اقتباس
السؤال
خالد مرتضى
في لغة الجافاسكريبت ما الفرق بين == و ===
3 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.