التابع Hash.flatten
في روبي
يعيد التابع flatten
مصفوفة جديدة والتي تكون تسطيح أحادي الأبعاد للكائن Hash
الذي استدعي معه. أي أنَّ لكل مفتاح أو قيمة تكون مصفوفة، تستخرج عناصرها إلى مصفوفة جديدة. على عكس Array.flatten
، لا يُسطِّح هذا التابع بشكل عَودي (recursively) افتراضيًا. يمكن تحديد مستوى عودية التسطيح عبر تمرير قيمة إلى التابع.
البنية العامة
flatten → an_array
flatten(level) → an_array
المعاملات
level
عدد صحيح يحدد مستوى عودية التسطيح.
القيمة المعادة
تعاد مصفوفة جديدة والتي تكون تسطيح أحادي الأبعاد للكائن Hash
المعطى.
أمثلة
مثال على استعمال التابع flatten
:
a = {1=> "one", 2 => [2,"two"], 3 => "three"}
a.flatten # => [1, "one", 2, [2, "two"], 3, "three"]
a.flatten(2) # => [1, "one", 2, 2, "two", 3, "three"]
انظر أيضا
- التابع
dig
: يستخرج القيمة المتداخلة المحددة بواسطة تسلسل كائنات تمثِّل المفاتيح عن طريق استدعاءdig
في كل خطوة، ويعيد القيمةnil
إذا كانت أي خطوة متوسطة هيnil
. - التابع
fetch
: يعيد قيمة من الكائنHash
لمفتاح معين.