الفرق بين المراجعتين لصفحة: «Ruby/Array/collect»

من موسوعة حسوب
< Ruby‏ | Array
لا ملخص تعديل
طلا ملخص تعديل
 
سطر 5: سطر 5:
يستدعي التابع <code>collect</code> كتلة برمجية محدَّدة مع كل عنصر من عناصر مصفوفة ثمَّ يعيد مصفوفة جديدة تحوي القيم التي تعيدها تلك الكتلة.
يستدعي التابع <code>collect</code> كتلة برمجية محدَّدة مع كل عنصر من عناصر مصفوفة ثمَّ يعيد مصفوفة جديدة تحوي القيم التي تعيدها تلك الكتلة.


إن لم يمرَّر أي شيء إلى هذا التابع، فسيعيد كائنًا من النوع <code>[[Ruby/Array/Enumerator|Enumerator]]</code>.
إن لم يمرَّر أي شيء إلى هذا التابع، فسيعيد كائنًا من النوع <code>[[Ruby/Enumerator|Enumerator]]</code>.
==البنية العامة==
==البنية العامة==
<syntaxhighlight lang="ruby"> collect { |item| block } → new_ary
<syntaxhighlight lang="ruby"> collect { |item| block } → new_ary
سطر 11: سطر 11:
  </syntaxhighlight>
  </syntaxhighlight>
==القيم المعادة==
==القيم المعادة==
تعاد مصفوفة جديدة تحوي القيم التي تعيدها الكتلة <code>block</code> عند تطبيقها على كل عنصر من عناصر المصفوفة المعطاة، أو يعاد كائنٌ من النوع <code>[[Ruby/Array/Enumerator|Enumerator]]</code>إن لم تمرَّر الكتلة <code>block</code>.
تعاد مصفوفة جديدة تحوي القيم التي تعيدها الكتلة <code>block</code> عند تطبيقها على كل عنصر من عناصر المصفوفة المعطاة، أو يعاد كائنٌ من النوع <code>[[Ruby/Enumerator|Enumerator]]</code>إن لم تمرَّر الكتلة <code>block</code>.
==أمثلة==
==أمثلة==
أمثلة على استخدام التابع <code>collect</code>:
أمثلة على استخدام التابع <code>collect</code>:

المراجعة الحالية بتاريخ 06:56، 2 أكتوبر 2018

يستدعي التابع collect كتلة برمجية محدَّدة مع كل عنصر من عناصر مصفوفة ثمَّ يعيد مصفوفة جديدة تحوي القيم التي تعيدها تلك الكتلة.

إن لم يمرَّر أي شيء إلى هذا التابع، فسيعيد كائنًا من النوع Enumerator.

البنية العامة

 collect { |item| block }  new_ary
collect  Enumerator

القيم المعادة

تعاد مصفوفة جديدة تحوي القيم التي تعيدها الكتلة block عند تطبيقها على كل عنصر من عناصر المصفوفة المعطاة، أو يعاد كائنٌ من النوع Enumeratorإن لم تمرَّر الكتلة block.

أمثلة

أمثلة على استخدام التابع collect:

 a = [ "a", "b", "c", "d" ]
a.collect { |x| x + "!" }         #=> ["a!", "b!", "c!", "d!"]
a.map.with_index { |x, i| x * i } #=> ["", "b", "cc", "ddd"]
a                                #=> ["a", "b", "c", "d"]

انظر أيضًا

  • التابع collect!‎: يستدعي كتلة برمجية محددة مع كل عنصر من عناصر مصفوفة ثم يضع القيمة التي أعادتها تلك الكتلة مكان العنصر الذي استدعيت معه.
  • التابع each: يستدعي كتلة برمجية محدَّدة مع كل عنصر من عناصر مصفوفة، إذ تمرَّر قيمة ذلك العنصر كوسيط إلى الكتلة ثمَّ يعيد المصفوفة نفسها المعطاة.
  • التابع map: كتلة برمجية محددة مع كل عنصر من عناصر مصفوفة ثم يضع الناتج الذي تعيده هذه الكتلة لكل عنصر في مصفوفة جديدة وتعيدها.
  • التابع cycle: يستدعي كتلة برمجية محددة مع كل عنصر من عناصر المصفوفة عددًا محددًا من المرات أو عددًا لا نهائيًّا من المرات إن مررت القيمة nil إليه.

مصادر