الفرق بين المراجعتين لصفحة: «JavaScript/empty»

من موسوعة حسوب
لا ملخص تعديل
 
ط استبدال النص - '\[\[تصنيف:(.*)\]\]' ب'{{SUBPAGENAME}}'
 
سطر 56: سطر 56:
* معيار [http://www.ecma-international.org/publications/files/ECMA-ST-ARCH/ECMA-262,%203rd%20edition,%20December%201999.pdf#sec-12.3 ECMAScript 3rd Edition].
* معيار [http://www.ecma-international.org/publications/files/ECMA-ST-ARCH/ECMA-262,%203rd%20edition,%20December%201999.pdf#sec-12.3 ECMAScript 3rd Edition].
* معيار [http://www.ecma-international.org/publications/files/ECMA-ST-ARCH/ECMA-262,%201st%20edition,%20June%201997.pdf#sec-12.3 ECMAScript 1st Edition] .  
* معيار [http://www.ecma-international.org/publications/files/ECMA-ST-ARCH/ECMA-262,%201st%20edition,%20June%201997.pdf#sec-12.3 ECMAScript 1st Edition] .  
[[تصنيف:JavaScript]]
[[تصنيف:JavaScript|{{SUBPAGENAME}}]]
[[تصنيف:JavaScript Statement]]
[[تصنيف:JavaScript Statement|{{SUBPAGENAME}}]]

المراجعة الحالية بتاريخ 15:44، 28 يناير 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
الدعم الأساسي نعم نعم نعم نعم نعم

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