## مقارنة القيم في JavaScript
تُعد المقارنات في JavaScript من الأساسيات التي يحتاجها كل مبرمج لفهم كيفية عمل الشيفرات البرمجية واتخاذ القرارات بناءً على القيم المختلفة. تُستخدم المقارنات للتحقق من العلاقة بين القيم، سواء كانت متساوية، أكبر، أصغر، أو غير ذلك. دعونا نلقي نظرة عميقة على كيفية عمل المقارنات في JavaScript مع تقديم أمثلة توضيحية متعددة.
### أنواع المقارنات
1. **المساواة (== و ===)**
– **المساواة المجردة (==):** تتحقق من تساوي القيم بعد تحويلها إلى نفس النوع. على سبيل المثال:
console.log(5 == '5'); // true
في المثال أعلاه، يتم تحويل القيمة النصية ‘5’ إلى عدد ثم يتم المقارنة.
– **المساواة الصارمة (===):** تتحقق من تساوي القيم والنوع معًا، مما يعني عدم إجراء أي تحويل. على سبيل المثال:
console.log(5 === '5'); // false
هنا، تُعتبر القيم غير متساوية لأن الأنواع مختلفة.
2. **عدم المساواة (!= و !==)**
– **عدم المساواة المجردة (!=):** تتحقق من أن القيم ليست متساوية بعد تحويلها إلى نفس النوع. على سبيل المثال:
console.log(5 != '5'); // false
– **عدم المساواة الصارمة (!==):** تتحقق من أن القيم ليست متساوية أو أن الأنواع مختلفة. على سبيل المثال:
console.log(5 !== '5'); // true
3. **العلاقات (>، =، ):**
console.log(10 > 5); // true
– **أقل من (<):**
console.log(5 < 10); // true
– **أكبر من أو [شركة برمجة مصرية] يساوي (>=):**
console.log(10 >= 10); // true
– **أقل من أو يساوي (<=):**
console.log(5 <= 10); // true
### مقارنات خاصة
– **NaN:** القيمة `NaN` (Not-a-Number) لها خصائص خاصة، حيث أن المقارنة مع `NaN` باستخدام أي من العمليات ستعيد `false`. للتحقق من كون القيمة `NaN`، يُفضل استخدام `isNaN()`.
console.log(NaN === NaN); // false
console.log(isNaN(NaN)); // true
– **Null و Undefined:** عند المقارنة باستخدام `==`، فإن `null` و `undefined` يعتبران متساويين، لكنهما غير متساويين عند استخدام `===`.
console.log(null == undefined); // true
console.log(null === undefined); // false
### استخدام المقارنات في الشيفرة
تُعد المقارنات جزءًا مهمًا من التحكم في تدفق الشيفرة عبر [شركة برمجة مصرية] الجمل الشرطية مثل `if`، `switch`، و`while`.
let age = 18;
if (age >= 18) {
console.log("مرحبا بك في الموقع!");
} else {
console.log("عذرًا، يجب أن تكون بالغًا للدخول.");
}
في هذا المثال، يتم استخدام المقارنة للتحقق مما إذا كان المستخدم بالغًا بحيث يمكنه الدخول إلى الموقع.
### الخلاصة
المقارنات في JavaScript توفر وسيلة قوية للتحقق من العلاقات بين القيم واتخاذ القرارات بناءً على تلك العلاقات. من المهم فهم الفروق بين المساواة المجردة والصارمة، وكذلك كيفية التعامل مع القيم الخاصة مثل `NaN` و`null` و`undefined`. من خلال إتقان هذه المفاهيم، يمكن للمبرمجين كتابة شيفرة أكثر دقة وكفاءة.
