aboutsummaryrefslogtreecommitdiff
path: root/files/ar/glossary/function/index.html
diff options
context:
space:
mode:
Diffstat (limited to 'files/ar/glossary/function/index.html')
-rw-r--r--files/ar/glossary/function/index.html87
1 files changed, 87 insertions, 0 deletions
diff --git a/files/ar/glossary/function/index.html b/files/ar/glossary/function/index.html
new file mode 100644
index 0000000000..169997f62c
--- /dev/null
+++ b/files/ar/glossary/function/index.html
@@ -0,0 +1,87 @@
+---
+title: دالة
+slug: Glossary/Function
+tags:
+ - جافاسكربت
+ - مسرد
+translation_of: Glossary/Function
+---
+<p dir="rtl"><strong>الدالة</strong> (بالإنجليزيَّة: Function) هي قطعة من الكود يُمكِن استدعاؤها من جزء آخر أو من قبل نفسها، أو هي {{Glossary("variable", "مُتغيِّر")}} يشير إلى دالة. عندما تُستدعى الدالة، تُمرَّر {{Glossary("Argument", "المُعطيات")}} إلى الدالة كمُدخلات، كما يُمكِن للدالة - اختياريًا - أن تُعيد مُخرجًا. تُصنَّف الدوال في لغة {{glossary("JavaScript", "الجافاسكربت")}} على أنهَّا {{glossary("object", "كائنات")}}.</p>
+
+<p dir="rtl">اسم الدالة هو {{Glossary("identifier", "مُعرِّف")}} يُصرَّح عنه كجزء من كود التصريح عن الدالة. يعتمد {{Glossary("scope", "مجال")}} اسم الدالة على ما إذا كان اسمها تصريحًا أم تعبيرًا (حيث إذا كان تصريحًا سيُحمَّل قبل تنفيذ الكود، أما إذا كان تعبيرًا  سيُحمَّل عند وصول المُفسِّر إليه. طالع <a href="https://stackoverflow.com/questions/1013385/what-is-the-difference-between-a-function-expression-vs-declaration-in-javascrip">هذا السؤال</a> للمزيد من المعلومات).</p>
+
+<h3 dir="rtl" id="الأنواع_المختلفة_للدوال">الأنواع المختلفة للدوال</h3>
+
+<p dir="rtl"><strong>الدالة المجهولة </strong>(بالإنجليزيَّة: Anonymous function) هي دالة لا تملك اسمًا:</p>
+
+<pre class="brush: js">function () {};
+// أو باستخدام الأسهم في إصدار EMAScript 2015
+() =&gt; {};
+</pre>
+
+<p dir="rtl"><strong>الدالة المُسمّاة</strong> (بالإنجليزيَّة: Named function) هي دالة تملك اسمًا:</p>
+
+<pre class="brush: js">function foo() {};
+// أو باستخدام الأسهم في إصدار EMAScript 2015
+const foo = () =&gt; {};
+</pre>
+
+<p dir="rtl"><strong>الدالة المُحاطة</strong> (بالإنجليزيَّة: Inner function) هي دالة بداخل أخرى (الدالة <code>square</code> كما في مثالنا أدناه). <strong>الدالة المُحيطة</strong> (outer function) هي دالة (الدالة <code>addSquares</code> كما في مثالنا أدناه) تُحيط بأخرى:</p>
+
+<pre class="brush: js">function addSquares(a,b) {
+ function square(x) {
+ return x * x;
+ }
+ return square(a) + square(b);
+};
+//باستخدام الأسهم في إصدار ECMAScript 2015
+const addSquares = (a,b) =&gt; {
+ const square = x =&gt; x*x;
+ return square(a) + square(b);
+};
+</pre>
+
+<p dir="rtl"><strong>الدالة العوديّة</strong> (بالإنجليزيَّة: Recursive function) هي دالة تستدعي نفسها. طالع {{Glossary("Recursion", "المعاودة")}} للمزيد من التفاصيل.</p>
+
+<pre class="brush: js">function loop(x) {
+ if (x &gt;= 10)
+ return;
+ loop(x + 1);
+};
+//باستخدام الأسهم في إصدار ECMAScript 2015
+const loop = x =&gt; {
+ if (x &gt;= 10)
+ return;
+ loop(x + 1);
+};
+</pre>
+
+<p dir="rtl"><strong>التعبيرات الداليَّة المُستحضرة فوريًا</strong> (بالإنجليزيَّة: Immediately Invoked Function Expressions) هي دوال تُستدعى مباشرةً بعد أنْ تُحمَّل إلى {{glossary("Compiler", "مُصرِّف")}} المُتصفِّح. يُعرَّف هذا النوع من الدوال عبر إضافة قوسان: يساري ويميني إضافيان في نهاية تصريح الدالة (انظر أدناه).</p>
+
+<pre class="brush: js">// Error (https://en.wikipedia.org/wiki/Immediately-invoked_function_expression)
+/*
+​function foo() {
+ console.log('Hello Foo');
+}();
+*/
+
+(function foo() {
+    console.log("Hello Foo");
+}());
+
+(function food() {
+    console.log("Hello Food");
+})();
+
+</pre>
+
+<p dir="rtl">اقرأ <a href="https://en.wikipedia.org/wiki/Immediately-invoked_function_expression">هذه المقالة</a> في الموسوعة الحرَّة للمزيد عن هذا النوع من الدوال.</p>
+
+<h2 dir="rtl" id="المزيد_من_التفاصيل">المزيد من التفاصيل</h2>
+
+<h3 dir="rtl" id="مراجع_تقنيّة">مراجع تقنيّة</h3>
+
+<ul dir="rtl">
+ <li><a href="/ar/docs/Web/JavaScript/Guide/Functions">توثيق الدوال</a> في شبكة مطوري موزيلا</li>
+ <li><a href="/ar/docs/Web/JavaScript/Guide/Functions">الدوال السهميّة</a></li>
+</ul>