التعبير البرمجي الفارغ في JavaScript

من موسوعة حسوب
مراجعة 04:12، 17 يناير 2018 بواسطة عبد اللطيف ايمش (نقاش | مساهمات)
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)

التعبير البرمجي الفارغ (empty statement) يُستخدَم لتجنب توفير تعبير برمجي في المواضع التي تتطلب فيها JavaScript تعبيرًا برمجيًا واحدًا على الأقل.

البنية العامة

;

الوصف

التعبير الفارغ هو فاصلة منقوطة ; الذي يُشير إلى عدم وجود تعبير لتنفيذه حتى لو تطلبت JavaScript تعبيرًا أو أكثر؛ وفي المقابل، إذا كانت JavaScript تقبل باستخدام تعبير واحد فمن الممكن استخدم الأقسام الكتلية (block statement) لتجميع أكثر من تعبير برمجي.

أمثلة

قد يُستخدَم التعبير البرمجي الفارغ مع حلقات التكرار، لاحظ المثال الآتي الذي فيه حلقة تكرار دون جسم:

var arr = [1, 2, 3];

// جعل قيمة جميع عناصر المصفوفة 0
for (i = 0; i < arr.length; arr[i++] = 0) /* تعبير برمجي فارغ */ ;

console.log(arr)
// [0, 0, 0]

لاحظ أنَّ من المفيد إضافة تعليق لتبيين أنَّ استخدام التعبير البرمجي الفارغ مقصودٌ، لأنَّ استخدامه قد يختلط على قارئ الشيفرة. لاحظ أنَّ استخدام التعبير البرمجي الفارغ لم يكن مقصودًا في المثال الآتي:

if (condition);       // تنبيه، هذا الشرط لن يفعل شيئًا
   doThis()           // ستُنفَّذ هذه الدالة دومًا

مثالٌ آخر عن استخدام التعبير if...else دون أقواس معقوفة {}، لاحظ أنَّ ما يحدث عندما تكون قيمة المتغير three هي true ليس مهمًا، لكنه لن يؤدي إلى تنفيذ الدالة doThis()‎ الموجودة بعد else:

if (one)
  doOne();
else if (two)
  doTwo();
else if (three)
  ; // تعبير برمجي فارغ
else if (four)
  doFour();
else
  doThis();

دعم المتصفحات

الميزة Chrome Firefox Internet Explorer Opera Safari
الدعم الأساسي نعم نعم نعم نعم نعم

مصادر ومواصفات