++ i و i ++ عوامل زيادة وإنقاص

click fraud protection

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

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

يقوم هذا البيان بتحديث قيم كلا المتغيرين i و j في عبارة واحدة. الشيء هو أنه في حين أن ++ i و i ++ يفعلان نفس الشيء فيما يتعلق بتحديث i ، إلا أنهما يفعلان أشياء مختلفة فيما يتعلق بتحديث المتغيرات الأخرى. يمكن كتابة البيان أعلاه على النحو بيانين منفصلين مثل هذا:

لاحظ أن دمجها معًا يعني أن لدينا ثمانية أحرف بدلاً من 13. بالطبع ، النسخة الأطول أكثر وضوحا حيث يتعلق الأمر بتحديد القيمة j التي ستكون لها.

instagram viewer

هذا بالطبع يعني أن j لها الآن قيمة مختلفة عما كانت عليه في المثال الأول. يتحكم موضع ++ إما قبل أو بعد اسم المتغير في ما إذا كان المتغير يزداد قبل أو بعد استخدامه في العبارة التي يتم استخدامه فيها.

لذلك عندما تستخدمه بشكل منفصل كبيان واحد ، لن يكون هناك فرق بين وضعه قبل أو بعد اسم المتغير (باستثناء فرق السرعة المجهري الذي لن يراه أحد تنويه). بمجرد أن تقوم بدمجها مع عبارة أخرى ، فإنها تحدث فرقًا في القيمة التي يتم تخصيصها لبعض البيانات الأخرى متغير أو المتغيرات.

instagram story viewer