[英]Replacement of a mached element in an array, Lodash
function replaceById(requests, request) {
requests.splice(_.indexOf(requests, _.find(requests, {id: request.id})), 1, request);
}
Lodash(或其他实用程序库)是否提供了任何方法来简化对数组requests
特定元素request
替换,例如
function(r) { return _.eq(r.id, request.id); }
或身份对象,如
{id: request.id}
您可以使用findIndex :
function replaceById(requests, request) {
var index = _.findIndex(requests, function(r) {
return r.id === request.id
});
requests.splice(index, 1, request);
}
function replaceById(requests, request) { var index = _.findIndex(requests, function(r) { return r.id === request.id }); requests.splice(index, 1, request); } var requests = [{id: 1, msg: 'cool'}, {id: 2, msg: 'wow'}]; replaceById(requests, {id: 2, msg: 'stuff'}); console.log(requests);
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.4/lodash.min.js"></script>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.