ورقة غش حول كيفية استخدام أساليب مثيل JavaScript المشتركة في الصدأ.
وثائق JavaScript :
ينفذ وظيفة رد الاتصال "المخفض" المرفقة من قبل المستخدم على كل عنصر من عناصر الصفيف (من اليسار إلى اليمين) ، لتقليلها إلى قيمة واحدة.
مثال JavaScript:
const res = arr . reduce ( ( acc , obj ) =>
Math . abs ( obj . prop ) < Math . abs ( acc . prop ) ? obj : acc
) ;وثائق الصدأ :
يقلل العناصر إلى واحدة ، عن طريق تطبيق عملية تقليل بشكل متكرر.
مثال على الصدأ:
let res = arr . iter ( ) . reduce ( |acc , obj| {
if ( obj . prop ) . abs ( ) < ( acc . prop ) . abs ( ) {
obj
} else {
acc
}
} ) ;وثائق JavaScript :
إرجاع مجموعة جديدة تحتوي على جميع عناصر مجموعة الاتصال التي تُرجع وظيفة التصفية المقدمة من
true.
مثال:
const res = arr . filter ( r => r . prop === comparator ) ;وثائق الصدأ :
ينشئ مؤلفًا يستخدم إغلاقًا لتحديد ما إذا كان ينبغي أن يتم إنتاج عنصر.
مثال:
let res = arr . iter ( ) . filter ( | & r| r . prop == comparator ) . collect :: < Vec < _ > > ( ) ;documetation JavaScript :
إرجاع مجموعة جديدة تحتوي على نتائج استدعاء وظيفة على كل عنصر في صفيف الاتصال.
مثال:
let res = arr . map ( r => ( {
name : r . displayName ,
family : r . familyName
} ) ) ;وثائق الصدأ :
يأخذ إغلاق ويقوم بإنشاء تكرار يدعو هذا الإغلاق على كل عنصر.
مثال ( SimplePerson هنا struct ):
let res = arr . map ( |r| SimplePerson {
name : r . display_name . clone ( ) ,
family : r . family_name . clone ( ) ,
} ) ;وثائق JavaScript :
الإشارة إلى المصفوفة الأصلية ، تم فرزها الآن. لاحظ أنه يتم فرز الصفيف في مكانه ، ولم يتم إجراء أي نسخة.
مثال:
const res = arr . sort ( ( a , b ) => a . prop - b . prop ) ;وثائق الصدأ :
فرز الشريحة.
مثال (لاحظ أننا نتحور arr ):
arr . sort_by ( |a , b| a . prop . cmp ( & b . prop ) ) ;