我在我的Angular项目中使用Lodash,我想知道是否有更好的方法来编写以下代码:
$scope.new_arr = _.map(arr1, function(item){ return _.assign(item, {new_id: _.find(arr2, {id: item.id})}); }); $scope.new_arr = _.filter($scope.new_arr, function (item) { return item.new_id !== undefined; });
我试图将一个数组中的值组合到另一个数组中的相同对象,我想忽略两个数组中没有出现的对象(它类似于连接或sql语言中的左外连接).
这是一个代码示例的小提琴:点击我!
我认为最好使用链接
$scope.new_arr = _.chain(arr1) .map(function(item) { return _.merge( {}, // to avoid mutations item, {new_id: _.find(arr2, {id: item.id})} ); }) .filter('new_id') .value();