JavaScript/Topics/Statements
في هذا القسم جميع التعابير البرمجية الموجودة في لغة JavaScript.
التحكم في التنفيذ
block
تُستخدَم الأقسام الكتلية لتجميع عدِّة تعابير برمجية معًا، ويُعرَّف القسم بزوجين من الأقواس المعقوفة {}
.
break
يإنهاء حلقة التكرار الحالية أو التعبير switch
أو label
، وستنقل تنفيذ البرنامج إلى التعبير البرمجي الذي يلي التعبير الذي انتهى.
continue
تجاوز تنفيذ التعابير البرمجية في التكرار الحالي (iteration) في حلقة التكرار الحالية أو حلقة التكرار المسماة (عبر لافتة)، وسيستمر تنفيذ الحلقة بدءًا من التكرار التالي.
Empty
يُستخدَم لتجنب توفير تعبير برمجي في المواضع التي تتطلب فيها JavaScript تعبيرًا برمجيًا واحدًا على الأقل.
if...else
التعبير البرمجي الشرطي يُستخدَم لتنفيذ تعبير برمجي معيّن عندما يكون الشرط محققًا، وإذا كان الشرط غير محققٍ فسيُنفِّذ تعبيرًا برمجيًا آخر.
switch
يُستخدَم لمطابقة قيمة تعبير برمجي باستخدام عبارةcase
، ثم يُنفِّذ التعابير البرمجية المرتبطة معها.
throw
يؤدي إلى رمي استثناء (exception) يُعرِّفه المستخدم.
try...catch
يُستخدَم لتجربة قسم من التعابير البرمجية، ويُحدِّد طريقةً لمعالجة الاستثناءات إن رُمِيَت.
تعابير التصريح عن متغيرات
var
تعبير variable
يُصرِّح عن متغير، ويمكن تهيئة قيمته الابتدائية اختياريًا.
let
يُصرِّح عن متغير محلي للقسم الكتلي، ويمكن تهيئة قيمته الابتدائية اختياريًا.
const
التصريح عن ثابت للقراءة فقط.
الدوال والأصناف
function
(التصريح عن دالة)
التصريح عن الدالة (function declaration) يُعرِّف دالةً لها معاملات (parameters) معيّنة. انظر إلى صفحة «الدوال في JavaScript» للمقارنة بين صيغ تعريف الدوال.
function*
(التصريح عن دالة مولدة)
التصريح عن الدالة المولدة. انظر إلى صفحة «الدوال في JavaScript» للمقارنة بين صيغ تعريف الدوال.
async function
(التصريح عن دالة غير متزامنة)
التصريح عن دالة غير متزامنة. انظر إلى صفحة «الدوال في JavaScript» للمقارنة بين صيغ تعريف الدوال.
return
يؤدي إلى إنهاء تنفيذ الدالة ويُحدِّد قيمةً لتُعيدها الدالة إلى التعبير الذي استدعاها.
class
(التصريح عن صنف)
التصريح عن الصنف (class declaration) يؤدي إلى إنشاء صنف جديد له اسمٌ معيّن يستخدم الوراثة عبر سلسلة prototype.
حلقات التكرار
do...while
يُنشِئ حلقة تكرار تُنفِّذ تعبيرًا برمجيًا معيّنًا إلى أن يصبح الشرط غير محقق (false)، وسيتم التحقق من الشرط بعد تنفيذ التعبير البرمجي، مما يؤدي إلى تنفيذ التعبير البرمجي المُعيّن مرةً واحدةً على الأقل.
for
يُنشِئ حلقة تكرار تتألف من ثلاثة تعبيرات برمجية اختيارية تحيط بها أقواس وتفصل بينها فواصل منقوطة، ويليها تعبيرٌ برمجيٌ (وعادةً يكون قسمًا كتليًا [block statement]) سيُنفَّذ في كل تكرار للحلقة.
for...in
يُنشِئ حلقة تكرار تمر على الخاصيات القابلة للإحصاء (enumerable properties
) التابعة لأحد الكائنات.
for...of
يمر على الكائنات التي يمكن الدوران على عناصرها (iterable objects) بما في ذلك الكائن Array
و Map
و Set
وString
و TypedArray
و Arguments
، وتنفيذ تعابير برمجية معيّنة على قيمة كل خاصية من خاصيات تلك الكائنات.
while
يُنشِئ حلقة تكرار تُنفِّذ تعبيرًا برمجيًا معيّنًا طالما كان الشرط محققًا (true)، وسيتم التحقق من الشرط قبل تنفيذ التعبير البرمجي.
غير ذلك
debugger
يؤدي إلى تفعيل وظيفة التنقيح (debugging functionality) المتاحة، مثل بداية نقطة المقاطعة (breakpoint)؛ لكن إن لم يكن هنالك منقِّح أو وظيفة تنقيح متاحة فلن يكون لهذا التعبير أي أثر.
export
يمكن أن يُستخدَم عند إنشاء وحدات JavaScript (أي JavaScript modules) لتصدير الدوال أو الكائنات أو القيم الأوليّة (primitive values) من وحدة (module) لكي يمكن استخدامها من برنامج آخر باستخدام التعبير البرمجي import
.
import
يُستخدَم لاستيراد ما صُدِّر من وحدة (module) أخرى.
label
يمكن أن يُستخدَم مع التعبير البرمجي break
أوcontinue
، وهو يوضع قبل التعابير البرمجية لإضافة لافتة (مُعرِّف) لها يمكن الإشارة إليها.