التابع Enumerable.each_with_index
في روبي
< Ruby | Enumerable
يستدعي التابع each_with_index
الكتلة المعطاة مع وسيطين هما: العنصر نفسه وفهرسه لكل عنصر من عناصر الكائن القابل للتعداد الذي استدعي معه. إن مُرِّر أي شيء إلى التابع، فسيُمرَّر مباشرةً إلى ()each
.
إن لم تُعطَ الكتلة، فسيُعيد التابع كائنًا من النوع Enumerator
.
البنية العامة
each_with_index(*args) { |obj, i| block } → enum
each_with_index(*args) → an_enumerator
المعاملات
args
الوسائط المراد تمريرها إلى ()each
.
القيمة المعادة
يعاد كائن قابل للتعداد يحوي نتائج تكرار الكتلة block
على كل عنصر وفهرسه من عناصر الكائن القابل للتعداد المعطى، أو يعاد كائنٌ من النوع Enumerator
إن لم تُعطَ الكتلة block
.
أمثلة
مثال على استعمال التابع each_with_index
:
hash = Hash.new
%w(cat dog wombat).each_with_index { |item, index|
hash[item] = index
}
hash #=> {"cat"=>0, "dog"=>1, "wombat"=>2}
انظر أيضًا
- التابع
each_cons
: يُكرِّر الكتلة المعطاة على كل مصفوفة منn
عنصر متتالي من عناصر الكائن القابل للتعداد الذي استدعي معه. - التابع
each_entry
: يستدعي الكتلة المعطاة مرةً واحدةً على كل عنصر من عناصر الكائن القابل للتعداد الذي استدعي معه. - التابع
each_slice
: يكرِّر الكتلة المعطاة على كل قطعة مكونة منn
عنصر من عناصر الكائن القابل للتعداد الذي استدعي معه. - التابع
each_with_object
: يكرِّر الكتلة المعطاة على كل عنصر من عناصر الكائن القابل للتعداد الذي استدعي معه مع كائن اعتباطي (الكائن المُمرَّر إليه) ثم يعيد هذا الكائن.