1.
تحويل المعاملات أولاً ثم قارن المساواة
عند تحويل أنواع البيانات المختلفة ، اتبع المساواة وعدم المساواة القواعد التالية:
1.1 إذا كان المعامل منطقية ، فقم بتحويله إلى قيمة رقمية قبل مقارنة المساواة --- خطأ إلى 0 وصحيح إلى 1 ؛
1.2 إذا كان أحد المعاملين عبارة عن سلسلة والآخر عبارة عن قيمة رقمية ، فقم بتحويل السلسلة إلى قيمة رقمية قبل مقارنة المساواة.
1.3 إذا كان أحد المعامل هو كائن والآخر ليس كذلك ، فسيتم استدعاء طريقة valueof () للكائن ويتم مقارنة قيمة النوع الأساسي الذي تم الحصول عليه وفقًا للقواعد السابقة.
1.4 فارغة وغير محددة متساوية
1.5 لا يمكن تحويل الفارغ وغير المحددة إلى أي قيمة أخرى قبل مقارنة المساواة
1.6 إذا كان هناك مشغل نان ، فإن المشغل المتساوي يعيد خطأ ، ويعود المشغل غير المتكافئ بشكل صحيح ؛ حتى لو كان كل من المعاملات نان ، فإن الشيء نفسه صحيح.
1.7 إذا كان كلا المعاملين كائنات ، قارن ما إذا كانا يشيران إلى نفس الكائن
| تعبير | قيمة |
| فارغ == غير محدد | حقيقي |
| "نان" == نان | خطأ شنيع |
| 5 == نان | خطأ شنيع |
| نان == نان | خطأ شنيع |
| نان! = نان | حقيقي |
| 5 == "5" | حقيقي |
| خطأ == 0 | حقيقي |
| صحيح == 1 | حقيقي |
| صحيح == 2 | فلاش |
| غير محدد == 0 | خطأ شنيع |
| NULL == 0 | خطأ شنيع |
2. متطابق === ومختلف تمامًا! ==
اثنين من المعاملين يعودون صحيحا على قدم المساواة دون التحويل ، وكاذبة إن لم يكن بالتساوي ؛
غير محدد == فارغ ؛ // صحيح
غير محدد === null ؛ // false
إن التفسير التفصيلي أعلاه لمشغل JS المساواة هو كل المحتوى الذي أشاركه معك. آمل أن تتمكن من إعطائك مرجعًا وآمل أن تتمكن من دعم wulin.com أكثر.