"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > كيف يمكنك التحقق بشكل موثوق من وجود متغيرات غير محددة أو فارغة في جافا سكريبت؟

كيف يمكنك التحقق بشكل موثوق من وجود متغيرات غير محددة أو فارغة في جافا سكريبت؟

تم النشر بتاريخ 2024-12-23
تصفح:279

How Can You Reliably Check for Undefined or Null Variables in JavaScript?

التحقق من وجود متغيرات غير محددة أو خالية في JavaScript

في JavaScript، من الشائع مواجهة متغيرات بدون قيمة معينة بشكل صريح أو متغيرات قد تكون غير محددة. وهذا يجعل التحقق من المتغيرات غير المحددة أو الفارغة أمرًا ضروريًا للحفاظ على سلامة التعليمات البرمجية.

الفحص الشرطي

يتضمن النهج التقليدي للتحقق من المتغيرات غير المحددة أو الخالية بيانًا شرطيًا باستخدام عامل التشغيل typeof وعمليات التحقق الصارمة من المساواة. :

if (typeof(some_variable) != 'undefined' && some_variable != null) {
  // Do something with some_variable
}

على الرغم من أنها مطولة، إلا أن هذه التقنية تضمن الدقة من خلال التحقق بشكل صريح من القيم غير المحددة والقيم الفارغة. ومع ذلك، يفضل بعض المطورين التدوين المختصر:

if (some_variable) {
  // Do something with some_variable
}

الشرطية المبسطة

يعتمد هذا الترميز المبسط على قواعد التحويل الضمنية لجافا سكريبت. أي قيمة غير خاطئة، بما في ذلك المتغيرات المحددة، يتم تقييمها على أنها صحيحة. لذلك، إذا تم تعريف some_variable ولم يكن فارغًا، فسيكون الشرط صحيحًا.

ومع ذلك، يمكن أن يؤدي هذا الاختصار إلى سلوك غير متوقع في مواقف معينة. على سبيل المثال، قد يعرض Firebug خطأ عندما يكون some_variable غير محدد، في حين سيتم تنفيذ الشرط الأكثر تفصيلاً بدون مشكلة.

الطريقة الموصى بها

الطريقة الأكثر موثوقية للتحقق من القيم غير المحددة أو الخالية هي استخدم عامل المساواة الصارمة، لأنه يسمح بتحكم أكثر دقة في المقارنة:

if (some_variable == null) {
  // some_variable is either null or undefined
}

تقارن هذه العبارة بشكل فعال some_variable بالقيمة null وترجع صحيحًا إذا كانت فارغة أو غير محددة.

ملاحظات

  • التدوين المبسط مفيد عند التحقق من المتغيرات الموجودة من المفترض أن يتم تعريفها، مثل الوسائط الاختيارية أو خصائص الكائن.
  • سيتم دائمًا تقييم المتغيرات العامة غير المحددة إلى غير محددة، أثناء التحقق منها باستخدام يمكن أن يكون typeof مفيدًا في سيناريوهات معينة.
  • يقدم عامل الدمج Nullish (؟؟) والتخصيص المنطقي nullish (؟؟=) بدائل موجزة لتعيين القيم الافتراضية في حالة وجود قيم فارغة أو غير محددة.
أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3