الفرق بين المراجعتين لصفحة: «Ruby/Array/!map»
لا ملخص تعديل |
جميل-بيلوني (نقاش | مساهمات) ط مراجعة وتدقيق. |
||
سطر 7: | سطر 7: | ||
إن لم يمرَّر أي شيء إلى هذا التابع، فسيعيد كائنًا من النوع <code>[[Ruby/Enumerator|Enumerator]]</code>. | إن لم يمرَّر أي شيء إلى هذا التابع، فسيعيد كائنًا من النوع <code>[[Ruby/Enumerator|Enumerator]]</code>. | ||
==البنية العامة== | ==البنية العامة== | ||
<syntaxhighlight lang="ruby"> map! {|item| block } → ary | <syntaxhighlight lang="ruby">map! {|item| block } → ary | ||
map! → Enumerator | map! → Enumerator | ||
</syntaxhighlight> | </syntaxhighlight> | ||
سطر 14: | سطر 14: | ||
==أمثلة== | ==أمثلة== | ||
مثالٌ على استخدام التابع <code>!map</code>: | مثالٌ على استخدام التابع <code>!map</code>: | ||
<syntaxhighlight lang="ruby"> a = [ "a", "b", "c", "d" ] | <syntaxhighlight lang="ruby">a = [ "a", "b", "c", "d" ] | ||
a.map! {|x| x + "!" } | a.map! {|x| x + "!" } | ||
a #=> [ "a!", "b!", "c!", "d!" ] | a #=> [ "a!", "b!", "c!", "d!" ] | ||
</syntaxhighlight> | </syntaxhighlight> | ||
==انظر أيضًا== | ==انظر أيضًا== | ||
* التابع [[Ruby/Array/map | <code>map</code>]]: يستدعي كتلة برمجية محدَّدة مع كل عنصر من عناصر مصفوفة ثمَّ يضع الناتج الذي تعيده هذه الكتلة لكل عنصر في مصفوفة جديدة وتعيدها. | * التابع<nowiki/>[[Ruby/Array/map | <code>map</code>]]: يستدعي كتلة برمجية محدَّدة مع كل عنصر من عناصر مصفوفة ثمَّ يضع الناتج الذي تعيده هذه الكتلة لكل عنصر في مصفوفة جديدة وتعيدها. | ||
* التابع [[Ruby/Array/!collect|<code>!collect</code>]]: يستدعي كتلة برمجية محددة مع كل عنصر من عناصر مصفوفة ثم يضع القيمة التي أعادتها تلك الكتلة مكان العنصر الذي استدعيت معه. | * التابع [[Ruby/Array/!collect|<code>!collect</code>]]: يستدعي كتلة برمجية محددة مع كل عنصر من عناصر مصفوفة ثم يضع القيمة التي أعادتها تلك الكتلة مكان العنصر الذي استدعيت معه. | ||
* التابع [[Ruby/Array/replace | <code>replace</code>]]: يبدِّل محتوى المصفوفة الممرَّرة إليه مكان محتوى المصفوفة المستدعاة معه مع تغيير طولها إن دعت الحاجة لذلك. | * التابع<nowiki/>[[Ruby/Array/replace | <code>replace</code>]]: يبدِّل محتوى المصفوفة الممرَّرة إليه مكان محتوى المصفوفة المستدعاة معه مع تغيير طولها إن دعت الحاجة لذلك. | ||
* التابع [[Ruby/Array/each | <code>each</code>]]: يستدعي كتلة برمجية محدَّدة مع كل عنصر من عناصر مصفوفة، إذ تمرَّر قيمة ذلك العنصر كوسيط إلى الكتلة ثمَّ يعيد المصفوفة نفسها المعطاة. | * التابع<nowiki/>[[Ruby/Array/each | <code>each</code>]]: يستدعي كتلة برمجية محدَّدة مع كل عنصر من عناصر مصفوفة، إذ تمرَّر قيمة ذلك العنصر كوسيط إلى الكتلة ثمَّ يعيد المصفوفة نفسها المعطاة. | ||
* التابع [[Ruby/Array/initialize_copy | <code>initialize_copy</code>]]: يبدل محتوى المصفوفة المُمرّرة إليه مكان محتوى المصفوفة التي استُدعيت معه مع تغيير طول المصفوفة عند الضرورة. | * التابع<nowiki/>[[Ruby/Array/initialize_copy | <code>initialize_copy</code>]]: يبدل محتوى المصفوفة المُمرّرة إليه مكان محتوى المصفوفة التي استُدعيت معه مع تغيير طول المصفوفة عند الضرورة. | ||
==مصادر== | ==مصادر== | ||
* [https://ruby-doc.org/core-2.5.1/Array.html#method-i-map-21 قسم التابع !Array.map في الصنف Array في توثيق روبي الرسمي.] | * [https://ruby-doc.org/core-2.5.1/Array.html#method-i-map-21 قسم التابع !Array.map في الصنف Array في توثيق روبي الرسمي.] |
المراجعة الحالية بتاريخ 07:51، 3 أكتوبر 2018
يستدعي التابع !map
كتلة برمجية محدَّدة مع كل عنصر من عناصر مصفوفة ثمَّ يضع القيمة التي أعادتها تلك الكتلة مكان العنصر الذي طُبِّقَت عليه.
إن لم يمرَّر أي شيء إلى هذا التابع، فسيعيد كائنًا من النوع Enumerator
.
البنية العامة
map! {|item| block } → ary
map! → Enumerator
القيم المعادة
تعاد المصفوفة نفسها المعطاة بعد تبديل القيمة الجديدة التي تعيدها الكتلة block
عند تطبيقها على كل عنصر من عناصر تلك المصفوفة مكان القيمة القديمة لذلك العنصر، أو يعاد كائنٌ من النوع Enumerator
إن لم تمرَّر الكتلة block
.
أمثلة
مثالٌ على استخدام التابع !map
:
a = [ "a", "b", "c", "d" ]
a.map! {|x| x + "!" }
a #=> [ "a!", "b!", "c!", "d!" ]
انظر أيضًا
- التابع
map
: يستدعي كتلة برمجية محدَّدة مع كل عنصر من عناصر مصفوفة ثمَّ يضع الناتج الذي تعيده هذه الكتلة لكل عنصر في مصفوفة جديدة وتعيدها. - التابع
!collect
: يستدعي كتلة برمجية محددة مع كل عنصر من عناصر مصفوفة ثم يضع القيمة التي أعادتها تلك الكتلة مكان العنصر الذي استدعيت معه. - التابع
replace
: يبدِّل محتوى المصفوفة الممرَّرة إليه مكان محتوى المصفوفة المستدعاة معه مع تغيير طولها إن دعت الحاجة لذلك. - التابع
each
: يستدعي كتلة برمجية محدَّدة مع كل عنصر من عناصر مصفوفة، إذ تمرَّر قيمة ذلك العنصر كوسيط إلى الكتلة ثمَّ يعيد المصفوفة نفسها المعطاة. - التابع
initialize_copy
: يبدل محتوى المصفوفة المُمرّرة إليه مكان محتوى المصفوفة التي استُدعيت معه مع تغيير طول المصفوفة عند الضرورة.