在这里,我有一个典型的for循环,稍后将我作为参数传递给它。.splice()我的问题是:如何用lodash重构它?
for(var i =0; i< scope.liveBalls.length;i++){
if(scope.liveBalls[i].bat === scope.ball.bat){
scope.splicedBalls.push(scope.liveBalls.splice(i,1));
}
}
_.each:遍历集合元素,为每个元素调用iteratee。iteratee绑定到thisArg,并使用三个参数调用:(值,索引|键,集合)。Iteratee函数可以通过显式返回false来提前退出迭代。
这意味着您可以像这样重构它:
_.each(scope.liveBalls, function (liveBall, index, liveBalls) {
if(liveBall.bat === scope.ball.bat){
scope.splicedBalls.push(liveBalls.splice(index, 1));
}
});
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句