يلاحظ:
1. بما أنك تدرس تقنية JavaScript حاليًا ، فإننا هنا نأخذ JavaScript كمثال. يمكنك تجربته في PHP بنفسك.
2. بناء جملة JavaScript معقد نسبيًا ، لذا خذ JavaScript كمثال.
لقد قرأت مؤخرًا دليل JavaScript Countative ، والذي يجب أن أقول إنه جاد للغاية في القراءة ، لذلك أردت تسجيل المزيد مما تعلمته. خلف
سأكتب تدريجياً المزيد من المقالات حول هذا الكتاب.
المعرفة النظرية في هذه المقالة تأتي من دليل جافا سكريبت موثوق. سأقوم بتنظيمه هنا ، أو أسميها ملاحظات.
إذا كانت مؤسستك جيدة بما فيه الكفاية ، فلن تكون مشكلة فهمها تمامًا ، ولكن إذا قرأتها قليلاً من الاكتئاب ، فيمكنك إضافة QQ: 76863715
فرضية قراءة هذه المقالة هي أنه يمكنك التمييز بين التعبيرات وما هي العبارات. هناك أيضًا ما هو في الغالب المشغلين والمشغلين. مكان
مصطلح التعبير هو "عبارة" JavaScript ، والتي يمكن لمترجم JavaScript حسابها لإنشاء قيمة. يمكن التعبيرات
ينقسم إلى الأنواع الثلاثة التالية:
1) الكمية المباشرة ، مثل 1.7 هي كمية مباشرة من الأرقام ، "دليل JavaScript الموثوق" هو كمية مباشرة من السلسلة ، إلخ.
2) المتغيرات
قيمة تعبير الكمية المباشرة هي الكمية المباشرة نفسها ، وقيمة التعبير المتغير هي القيمة المخزنة أو المشار إليها بواسطة المتغير.
3) يمكنك "دمج" التعبيرات "البسيطة" المذكورة أعلاه لإنشاءها كتعبيرات معقدة نسبيًا. على سبيل المثال ، 1.7 هو تعبير ، أنا أيضًا تعبير ، ويظهر الكود التالي نفس التعبير (يمكن استدعاءه أيضًا):
أنا+1.7
قيمة التعبير أعلاه هي مجموع تعبيرين بسيطين (تعبير متغير وتعبير بسيط). في هذا المثال ، "+" هو المشغل الذي يجمع بين تعبيرين بسيطين لتشكيل تعبير معقد.
عدد العمليات
يمكن تصنيف المشغلين وفقًا لعدد العمليات التي يتطلبها المشغل. معظم المشغلين هم عوامل ثنائية ، والتي تجمع بين "تعبيرين" في تعبير واحد معقد. باختصار ، لديها اثنين من الأرقام الحسابية. بالإضافة إلى ذلك ، يدعم JavaScript عددًا كبيرًا من عوامل Unary ، والتي يمكنها تحويل تعبير إلى تعبير آخر أكثر تعقيدًا. على سبيل المثال ، في التعبير -3 ، المشغل " -" هو مشغل أحادي ، ويقوم بإجراء عملية لعكس رقم العملية.
يدعم JavaScript أيضًا المشغل الثلاثية "؟:" ، والتي يمكن أن تندمج ثلاثة تعبيرات في تعبير معقد واحد.
حسنًا ، لنبدأ في شرح مشغل الفاصلة.
مشغل الفاصلة ، الذي سيحسب أولاً المعلمة على اليسار ثم حساب قيمة المعلمة على اليمين. ثم إرجاع قيمة المعلمة أقصى اليمين.
الأمثلة الواردة في الكتاب الأصلي ليست جيدة جدًا ولا يمكنها شرح الجملة أعلاه. هذا واحد آخر:
<script> var a = 10 ، b = 20 ؛ وظيفة commatest () {return a ++ ، b ++ ، 10 ؛} var c = commatest () ؛ Alert (a) ؛ // Return 11alert (B) ؛ // Return 21alert (C) ؛ // إرجاع 10 </script>قيمة المتغير C هي القيمة التي يتم إرجاعها بواسطة الوظيفة Commatest ، و A و B إضافة 1.
الصراع بين مشغل الفاصلة ومشغل مكالمات الوظيفة
في JavaScript ، فإن مكالمات الوظائف هي بالفعل مشغلي مكالمات الوظائف. إنه أمر مميز للغاية لأنه لا يوجد هذا الاسم في مواد لغة البرمجة الأخرى. بعد ذلك ، (أي) لا يحتوي على عدد ثابت من العمليات.
المعلمة الأولى لمشغل استدعاء الوظيفة هي اسم وظيفة أو تعبير يشير إلى الوظيفة ، تليها قوسين (). يمكن أن يتنوع عدد المشغلين في منتصف الأقواس ، ويمكن أن تكون هذه المعاملات أي تعبير مفصل بواسطة الفواصل.
سيقوم مشغل مكالمات الوظائف بحساب كل من عملياته ، ويتم تحديد العملية الأولى كاسم الوظيفة (قبل الأقواس) ، وسيتم نقل قيم جميع العمليات في منتصف الأقواس إلى هذه الوظيفة كمعلمة إلى الوظيفة.
على سبيل المثال:
document.close () Math.sin (x) ALERT ("مرحبًا"بعد معرفة ذلك ، دعونا نعطي مثالاً على كيفية التعامل مع صراعاتهم.
<script> Alert (2*5 ، 2*4) ؛ // الإخراج 10 </script>
يخرج الرمز أعلاه 10 ، ولكن إذا تم شرحه وفقًا لمبدأ مشغل الفاصلة ، يجب أن يخرج 8. لماذا؟
نظرًا لأن مشغل الفاصلة هو أدنى أولوية في JavaScript ، فمن المفيد جدًا أن نتذكر ذلك. لذلك سيتم تشغيل مشغل مكالمات الوظيفة قبل مشغل الفاصلة. تقوم وظيفة تنبيه النتيجة بإخراج قيمة المعلمة الأولى. تغيير الرمز أعلاه إلى ما يلي.
<script> ALERT ((2*5 ، 2*4)) ؛ // العودة إلى 8 </script>
الصراع بين مشغل الفاصلة وعملية المهمة
في JavaScript ، يتمتع مشغل الفاصلة بأولوية أفضل من مشغل المهمة. يرجى الاطلاع على الرمز أدناه.
<script> var a = 20 ؛ var b = ++ a ، 10 ؛ Alert (b) ؛ </script>
لا يبدو أن هذا الرمز يعمل ، ربما لأن مشغل المهمة يدير الأسبقية على تعبير الفاصلة ، إذا تم تغيير الكود إلى
<script> var a = 20 ؛ var b = (++ a ، 10) ؛ Alert (b) ؛ </script>
افعل ذلك.
دعنا نوضح "ممكن" المذكور أعلاه هنا. هذه بعض وجهات نظري وقد لا تكون موثوقة.
يتطلب مشغل الفاصلة أن يكون معامله تعبيرًا معقدًا أو تعبيرًا بسيطًا (مثل متغير أو كمية مباشرة) ، ولكن بما أن مشغل المهمة له الأسبقية على مشغل الفاصلة ، فإنه لا يصبح معاملًا أو تعبيرًا على اليسار ، ولكن عبارة تحتوي
يمكن اعتبار الرمز الذي لا يمكن تنفيذه من قبل الرمز التالي:
<script> var a = 20 ؛ (var b = ++ a) ، 10 ؛ تنبيه (b) ؛ </script>
هناك عبارات تعبير في البيان ، ولكن ليست كل العبارات تعبيرات.
#######################################################################################
1. خصائص ووظائف مشغلي الفاصلة
مشغل الفاصلة هو تسلسل العديد من التعبيرات. أولويته هي الأقل بين جميع المشغلين ، واتجاه الربط "من اليسار إلى اليمين".
على سبيل المثال: 3*3 ، 4*4
2. التعبير الفاصلة
الشكل العام للتعبير الفاصلة هو: التعبير 1 ، التعبير 2 ، التعبير 3 ... التعبير ن
عملية حل تعبير الفاصلة هي: أولاً احسب قيمة التعبير 1 ، ثم احسب قيمة التعبير 2 ، و ... حتى قيمة التعبير n. أخيرًا ، قيمة تعبير الفاصلة بأكمله هي قيمة التعبير n.
انظر الأمثلة التالية:
x = 8*2 ، x*4 /*قيمة التعبير بأكمله هي 64 ، وقيمة x هي 16* /
(x = 8*2 ، x*4) ، x*2 /*قيمة التعبير بأكمله هي 128 ، وقيمة x هي 16* /
x = (z = 5،5*2) /*التعبير بأكمله هو تعبير مهمة ، وقيمته 10 ، وقيمة z هي 5* /
x = z = 5،5*2 /*التعبير بأكمله هو تعبير فاصلة ، قيمته 10 ، وقيم x و z هي 5* /
لا توجد أماكن كثيرة لاستخدام تعبيرات الفاصلة ، وعادة ما يتم استخدامها فقط عند تعيين القيم الأولية لمتغيرات الحلقة. لذلك ، لا ينبغي اعتبار جميع الفواصل في البرنامج مشغليًا للفواصل ، خاصة عند استدعاء وظيفة ما ، يتم فصل كل معلمة بواسطة فاصلة ، ولا تعتبر الفاصلة مشغل فاصلة.
على سبيل المثال: printf ("٪ d ، ٪ d ، ٪ d" ، x ، y ، z) ؛
############################################################################################
يتسبب المشغل في تنفيذ التعبيرات على كلا الجانبين بالترتيب من اليسار إلى اليمين ، ويحصل على قيمة التعبير على اليمين. ، يتم استخدام الاستخدام الأكثر شيوعًا للمشغلين في التعبيرات الإضافية للحلقات. على سبيل المثال:
لـ (i = 0 ؛ i <10 ؛ i ++ ، j ++) {k = i+j ؛}في كل مرة تمر في نهاية الحلقة ، يسمح البيان لـ FOR بتنفيذ تعبير واحد فقط. ، يتم استخدام المشغلين للسماح بمعاملة تعبيرات متعددة كتعبير واحد ، وبالتالي التحايل على هذا القيد.
يناقش المقال أعلاه باختصار استخدام مشغلي الفاصلة في JS هو كل المحتوى الذي شاركته معك. آمل أن تتمكن من إعطائك مرجعًا وآمل أن تتمكن من دعم wulin.com أكثر.