الفرق بين = و== و=== في Javaالنص [أمثلة]
ما هو = في Javaالبرنامج النصي؟
يساوي (=) هو عامل تعيين، والذي يعين المتغير الموجود على يسار = إلى قيمة التعبير الموجود على يمينه. يقوم هذا العامل بتعيين lvalue إلى rvalue.
على سبيل المثال، كتابة a=10 أمر جيد. إذا كتبنا 10=10، 'a' = 10 أو 'a' = 'a'، فسيؤدي ذلك إلى خطأ مرجعي.
ما هو == في Javaالبرنامج النصي؟
Double equals (==) هو عامل مقارنة، والذي يحول المتغيرات التي لها نفس النوع قبل المقارنة.
لذا، عند مقارنة السلسلة برقم، Javaيقوم البرنامج النصي بتحويل أي سلسلة إلى رقم. يتم تحويل السلسلة الفارغة دائمًا إلى صفر. يتم تحويل السلسلة التي لا تحتوي على قيمة عددية إلى NaN (ليست رقمًا)، مما يعيد القيمة false.
ما هو === في Javaالبرنامج النصي؟
=== (المساواة الثلاثية) هو عامل مقارنة المساواة الصارم في Javaبرنامج نصي يعيد قيمة false للقيم التي ليست من نوع مماثل. يقوم هذا المشغل بإجراء تحويل النوع لتحقيق المساواة. إذا قارنا 2 بـ "2" باستخدام ===، فسوف يعيد قيمة false.
لماذا تستخدم = في Javaالبرنامج النصي؟
فيما يلي الاستخدامات المهمة لـ = in Javaسيناريو:
= Javaيقوم عامل النص بتعيين قيمة للمتغير الأيسر بناءً على قيمة المتغير المتاح على الجانب الأيمن. يجب أن يكون المتغير الأول متغيرًا.
عامل الإسناد الأساسي هو =، الذي يعين قيمة متغير إلى آخر. أي أن a = b يعين قيمة b إلى a.
لماذا استخدام == في Javaالبرنامج النصي؟
فيما يلي الاستخدامات المهمة لـ == in Javaالنصي:
عامل == هو عامل مساواة. فهو يتحقق مما إذا كان المتعاملان متماثلين أم لا عن طريق تغيير التعبير من نوع بيانات إلى آخر. يمكنك استخدام عامل == لمقارنة هوية المتعاملين على الرغم من أنهما ليسا من نوع مماثل.
كيف === يعمل بالضبط؟
- المساواة الصارمة === تتحقق من أن القيمتين متماثلتان أم لا.
- لا يتم تحويل القيمة ضمنيًا إلى قيمة أخرى قبل المقارنة.
- إذا كانت قيم المتغيرات من أنواع مختلفة، تعتبر القيم غير متساوية.
- إذا كان المتغير من نفس النوع، وليس رقميًا، وله نفس القيمة، فسيتم اعتبارهما متساويين.
- أخيرًا، إذا كانت قيمتا المتغيرين أرقامًا، فسيتم اعتبارهما متساويتين إذا لم تكونا NaN (ليست رقمًا) وكانتا نفس القيمة.
مثال =
يوجد في البرنامج أدناه متغيران "أ" و"ب". نقوم بإضافة وطباعة قيمها باستخدام المتغير الثالث "c". مجموع قيم المتغيرين "أ" و"ب" هو 7. وبالتالي، فإن الناتج هو 7.
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Operators</h2>
<p>a = 2, b = 5, calculate c = a + b, and display c:</p>
<p id="demonstration"></p>
<script>
var a = 2;
var b = 5;
var c= a + b;
document.getElementById("demonstration").innerHTML = c;
</script>
</body>
</html>
الإخراج:
أ = 2، ب = 5، احسب ج = أ + ب، واعرض ج:
7
مثال ==
في البرنامج أدناه، قمنا بتعريف متغير واحد "a" بقيمة 10. وأخيرًا، العبارة a == 20 تُرجع خطأ لأن قيمة a هي 10.
<!DOCTYPE html>
<html>
<body>
<p id="demonstration"></p>
<script>
var a = 10;
document.getElementById("demonstration").innerHTML = (a == 20);
</script>
</body>
</html>
الإخراج:
زائف
مثال ===
في البرنامج أدناه، قيمة المتغير x هي 10. تتم مقارنتها بالرقم 10 المكتوب بين علامتي اقتباس مزدوجتين، وهو ما يعتبر سلسلة، وبالتالي فإن القيم ليست هي نفسها تمامًا. مخرجات البرنامج خاطئة.
<!DOCTYPE html>
<html>
<body>
<p id="demo"></p>
<script>
var x = 10;
document.getElementById("demo").innerHTML = (x === "10");
</script>
</body>
</html>
الإخراج:
زائف
= Vs == VS === في Javaسيناريو
فيما يلي الاختلافات المهمة بين = و == و ===
| = | == | === |
|---|---|---|
| = في Javaيتم استخدام البرنامج النصي لتعيين القيم للمتغير. | == في Javaيتم استخدام البرنامج النصي لمقارنة متغيرين، ولكنه يتجاهل نوع بيانات المتغير. | يتم استخدام === لمقارنة متغيرين، ولكن هذا المشغل يتحقق أيضًا من نوع البيانات ويقارن بين قيمتين. |
| يُطلق عليه اسم عامل التعيين | يُطلق عليه اسم عامل المقارنة | ويطلق عليه أيضًا عامل المقارنة |
| يمكن لمشغل التعيين التقييم إلى القيمة المخصصة | يتحقق من مساواة المتعاملين دون النظر إلى نوعهما. | يقارن مساواة المتعاملين مع أنواعهما. |
| لا يعود صحيحا أو كاذبا | إرجاع true إذا كان المتعاملان متساويين. إرجاع false إذا لم يكن المتعاملان متساويين. | يتم إرجاعه صحيحًا فقط إذا كانت القيم وأنواع البيانات هي نفسها بالنسبة للمتغيرين. |
| = ببساطة قم بتعيين قيمة واحدة للمتغير إلى قيمة أخرى. | == إجراء تصحيح النوع بناءً على قيم المتغيرات. | === يأخذ نوع المتغير في الاعتبار. |
| = لن تتم مقارنة قيمة المتغيرات على الإطلاق. | يتحقق == من المساواة فقط بعد إجراء المحادثات الضرورية. | إذا كانت القيمتان المتغيرتان غير متشابهتين، فلن تقوم === بإجراء أي تحويل. |
الاختلافات الرئيسية
- = يستخدم لتعيين قيم لمتغير، == يستخدم لمقارنة متغيرين، لكنه يتجاهل نوع بيانات المتغير بينما === يستخدم لمقارنة متغيرين، لكن هذا المشغل يتحقق أيضًا من نوع البيانات ويقارن بين قيمتين.
- = يسمى كمشغل تعيين، == يسمى كمشغل مقارنة بينما يسمى أيضًا كمشغل مقارنة.
- = لا ترجع قيمة true أو false، == ترجع قيمة true فقط إذا كان المتعاملان متساويين بينما === ترجع قيمة true فقط إذا كانت القيم وأنواع البيانات متماثلة للمتغيرين.
