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 ) ) ;