انتقل إلى المحتوى الرئيسي

المهام

@serverSerrverlesskiy

المهام⚙️ حتى لا تكرر نفس الرمز في العديد من الأماكن في خوارزمية البرنامج. في البرامج الحديثة ، الوظائف هي "اللبنات الأساسية".

لا تكرر نفسك

DRY (روس. لا تكرر نفسك) هو مبدأ تطوير برمجيات يهدف إلى تقليل تكرار المعلومات بمختلف أنواعها ، خاصة في الأنظمة ذات طبقات التجريد المتعددة. الوظائف هي بالضبط نوع البيانات التي تخدم مبدأ التصميم هذا.

حدد اسم الوظيفة

Function⚙️ هي العمل! لذلك ، عادة ما يكون اسم الوظيفة فعل. يجب أن تكون بسيطة ودقيقة ، وتصف عمل الوظيفة ، حتى يتمكن المبرمج من قراءة الكود لديه فهم جيد لما تفعله الوظيفة.

Choice

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

على سبيل المثال ، عادةً ما تظهر الدوال - التي تبدأ بـ `` إظهار '' شيئًا ما.

الوظائف تبدأ بـ ...

"get .." - إرجاع قيمة ،
"calc .."- شيء ما يتم حسابه ،
"create .." - ابتكار شيء ما ،
"check .." - تحقق من شيء ما وأعد قيمة منطقية ، إلخ.

أمثلة على هذه الأسماء:

showMessage (..)// يظهر الرسالة
getAge (..) // إرجاع العمر (في بعض القيمة)
calcSum (..) // يحسب المجموع ويعيد النتيجة
createForm (..) // ينشئ نموذجًا (ويعيده عادةً)
checkPermission (..) // يتحقق الوصول عن طريق إرجاع صح / خطأ

بفضل البادئات ، للوهلة الأولى على اسم الوظيفة ، يصبح من الواضح ما يفعله كودها والقيمة التي يمكن أن ترجعها.

على أي حال ، أنت وفريقك بحاجة إلى فهم ما تعنيه البادئة بالضبط وماذا يمكن للدالة وما لا تستطيع فعله بها.

::: ملاحظة أسماء الوظائف فائقة القصر⚙️ أحيانًا يتم اختصار أسماء الدوال المستخدمة في كثير من الأحيان.

على سبيل المثال ، يحتوي إطار عمل jQuery على وظيفة تسمى $.في مكتبة Lodash ، يتم تمثيل الوظيفة الرئيسية باسم الشرطة السفلية \ _

هذه استثناءات. بشكل أساسي ، يجب أن تكون أسماء الوظائف قصيرة ووصفية بشكل معقول . :::

وظائف === تعليقات

cut

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

الدوال الصغيرة - لا تجعل الاختبار وتصحيح الأخطاء أسهل فحسب - إن وجود مثل هذه الوظائف - بمثابة تعليقات جيدة.

إعلان الوظيفة

Announcement

لإنشاء الدوال - نستخدم إعلان الوظيفة -.

يأتي أولاً الكلمة الأساسية function, متبوعًا باسم الوظيفة ، ثم قائمة المعلمات بين قوسين مفصولة بفواصل (في المثال المعطى فارغة) ، وأخيرًا ، الرمز من الوظيفة ، وتسمى أيضًا "جسم الوظيفة" ، داخل الأقواس المتعرجة ...

هذه الطريقة الكلاسيكية في الكتابة وظائف تسمىFunction Declaration.

بناء الجملة :

function name (parameters) {
... body ... // Algorithm
returnTotalValue
}

::: لاحظ انتبه! إذا لم يتم تحديد أي عودة ، فإن الوظيفة ترجع غير محددة بدلاً من ذلك ، ويفترض افتراضيًا أن تنتهي الوظيفة بخط إرجاع فارغ ، مع تنفيذ البرامج النصية الداخلية فقط. :::

في JavaScript ، بصرف النظر عن الإصدار الكلاسيكيFunction Declaration طريقة ، يمكنك إنشاء دالة باستخدام:

  • Function Expression
  • Arrow Function (arrow functions)

تعبير الدالة هو تصريح من وظيفة التي هي جزء من تعبير (على سبيل المثال ، مهمة).

const name = function (parameters) {
// instructions
}

فلنقارن Function Declaration و Function Expression:

// Function Declaration
function sum(num1, num2) {
return num1 + num2
}

// Function Expression
const sum = function (num1, num2) {
return num1 + num2
}

سيتم تقديم صيغة دالة السهم لاحقًا في هذا الفصل. هذه هي الطريقة المبسطة والأكثر استخدامًا لكتابة الوظائف.

استدعاء وظيفة

لاستدعاء دالة وتنفيذها ، تحتاج إلى الرجوع إليها بالاسم ثم تحديد قوسين myMessages():

// function declaration
function myMessage() {
let str = 'Hello!'
}

myMessage() // function call

لاحظ أنه في هذا المثال يتم استدعاء الوظيفة ولكنها لا تُرجع قيمة.

وظائف مع العودة

Return

من أجل وظيفة لإرجاع شيء ما ، الكلمة الأساسيةreturn (نقطة الخروج أو العودة للنتيجة) ويتم تحديد القيمة المعادة في نصها.

محرر مباشر
النتيجة
Loading...

التجربة ، استبدل الرقم الأصلي9️⃣ بعدد سنواتك.

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

وظيفة داخل وظيفة أخرى

Matryoschka

داخل وظيفة⚙️ يمكنك وضع وظائف أخرى⚙️. على سبيل المثال ، الوظيفة⚙️ showNumberFive() سيعيد الرقم ، سيتم عرض قيمته من خلال الاستدعاء إلى وظيفة التعلمlearnJavaScript().

محرر مباشر
النتيجة
Loading...

لنستعرض كل هذا خطوة بخطوة:

  • الكلمة function يشير للمترجم الفوري إلى أن الكود التالي معرف من قبل المستخدم ، أي أنه تم إنشاؤه بواسطتك وليس وظيفة مضمنة.
  • مكتوب في حالة الجملshowNumberFive ​​هو الاسم المخصص لهذه الوظيفة. بالنسبة للمترجم الشفهي ، بشكل عام ، لا فرق بالضبط في تسمية هذه الوظيفة ، ولكن من الأفضل إعطاء أسماء الوظائف التي تشير بوضوح إلى ما تفعله بالضبط.
  • () الأقواس هي عنصر مطلوب لأي دالة. في بعض الأحيان يتم وضع متغير واحد أو متغيرين أو أكثر بين قوسين , في حالتنا لا يوجد شيء بين قوسين.
  • يجب أن يكون جسم الوظيفة نفسها محاطًا بأقواس معقوفة "{}" - جوهر خوارزمية البرنامج.
  • عادة ما يتم وضع مسافة بادئة لجسم الوظيفة نفسها إلى اليمين (باستخدام مفتاح TAB) هذا ليس ضروريًا لتنفيذ البرنامج ، ولكنه ضروري للعمل الجماعي ، لأنه يسهل إلى حد كبير قراءة الكود.
  • تعني الكلمة الرئيسية "إرجاع" أنه كلما استدعينا هذه الوظيفة ، سيتم تمرير القيمة ، أي "إرجاع" ، إلى المترجم ، لذلك يطلق عليها "القيمة المرجعة للدالة".

Dmitriy K.


Dmitriy Vasilev

💵

Resoner2005

🐛 🎨 🖋

Navernoss

🖋 🐛 🎨