Rust Array Function Cheatsheet for JavaScript Developers
1.0.0
關於如何在Rust中使用常見的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 < _ > > ( ) ;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 ) ) ;