الفرق بين المراجعتين لصفحة: «Ruby/Hash/dig»
جميل-بيلوني (نقاش | مساهمات) إنشاء الصفحة. |
جميل-بيلوني (نقاش | مساهمات) إضافة محتويات الصفحة. |
||
سطر 1: | سطر 1: | ||
<noinclude>{{DISPLAYTITLE:التابع <code>Hash. | <noinclude>{{DISPLAYTITLE:التابع <code>Hash.dig</code> في روبي}}</noinclude> | ||
[[تصنيف: Ruby]] | [[تصنيف: Ruby]] | ||
[[تصنيف: Ruby Method]] | [[تصنيف: Ruby Method]] | ||
[[تصنيف: Ruby Hash]] | [[تصنيف: Ruby Hash]] | ||
يستخرج التابع <code>dig</code> القيمة المتداخلة المحددة بواسطة تسلسل كائنات تمثِّل المفاتيح عن طريق استدعاء <code>dig</code> في كل خطوة، ويعيد القيمة <code>nil</code> إذا كانت أي خطوة متوسطة هي <code>nil</code>. | |||
==البنية العامة== | ==البنية العامة== | ||
<syntaxhighlight lang="ruby"> | <syntaxhighlight lang="ruby">dig(key, ...) → object</syntaxhighlight> | ||
==المعاملات== | ==المعاملات== | ||
=== <code>key</code> === | |||
المفتاح المتشعب المراد استخراج قيمته. | |||
=== <code>...</code> === | |||
سلسلة من المفاتيح المتشعبة. | |||
==القيمة المعادة== | ==القيمة المعادة== | ||
تعاد | تعاد القيمة المرتبطة بالمفتاح <code>key</code> أو سلسلة المفاتيح <code>...</code> المتشعبة. | ||
== أمثلة == | |||
مثال على استعمال التابع <code>dig</code>:<syntaxhighlight lang="ruby"> | |||
h = { foo: {bar: {baz: 1}}} | |||
h.dig(:foo, :bar, :baz) #=> 1 | |||
h.dig(:foo, :zot, :xyz) #=> nil | |||
g = { foo: [10, 11, 12] } | |||
g.dig(:foo, 1) #=> 11 | |||
g.dig(:foo, 1, 0) #=> TypeError: Integer does not have #dig method | |||
g.dig(:foo, :bar) #=> TypeError: no implicit conversion of Symbol into Integer | |||
</syntaxhighlight> | |||
==انظر أيضا== | ==انظر أيضا== | ||
* | * التابع <code>[[Ruby/Hash/flatten|flatten]]</code>: يعيد مصفوفة جديدة والتي تكون تسطيح أحادي الأبعاد للكائن <code>[[Ruby/Hash|Hash]]</code> الذي استدعي معه. | ||
==مصادر== | ==مصادر== | ||
*[http://ruby-doc.org/core-2.5.1/Hash.html#method-i- | *[http://ruby-doc.org/core-2.5.1/Hash.html#method-i-dig قسم التابع dig في الصنف Hash في توثيق روبي الرسمي.] |
المراجعة الحالية بتاريخ 13:29، 26 نوفمبر 2018
يستخرج التابع dig
القيمة المتداخلة المحددة بواسطة تسلسل كائنات تمثِّل المفاتيح عن طريق استدعاء dig
في كل خطوة، ويعيد القيمة nil
إذا كانت أي خطوة متوسطة هي nil
.
البنية العامة
dig(key, ...) → object
المعاملات
key
المفتاح المتشعب المراد استخراج قيمته.
...
سلسلة من المفاتيح المتشعبة.
القيمة المعادة
تعاد القيمة المرتبطة بالمفتاح key
أو سلسلة المفاتيح ...
المتشعبة.
أمثلة
مثال على استعمال التابع dig
:
h = { foo: {bar: {baz: 1}}}
h.dig(:foo, :bar, :baz) #=> 1
h.dig(:foo, :zot, :xyz) #=> nil
g = { foo: [10, 11, 12] }
g.dig(:foo, 1) #=> 11
g.dig(:foo, 1, 0) #=> TypeError: Integer does not have #dig method
g.dig(:foo, :bar) #=> TypeError: no implicit conversion of Symbol into Integer