Javascript 如何使用_lodash处理阵列中的字段以备份和恢复这些字段?

Javascript 如何使用_lodash处理阵列中的字段以备份和恢复这些字段?,javascript,lodash,Javascript,Lodash,我需要做一些数组操作,希望有人 告诉我洛达斯是不是我可以用的东西。我所拥有的 是一个名为result的数组,包含以下内容: var result = [ {"referenceId":20,"callerId":1, "location":2}, {"referenceId":21,"callerId":1, "location":3} ] 我想创建此阵列的备份,如下所示: var resultBackup = [ {"location":2}, {"location":3} ] var

我需要做一些数组操作,希望有人 告诉我洛达斯是不是我可以用的东西。我所拥有的 是一个名为result的数组,包含以下内容:

var result = 
[
{"referenceId":20,"callerId":1, "location":2},
{"referenceId":21,"callerId":1, "location":3}
]
我想创建此阵列的备份,如下所示:

var resultBackup =
[
{"location":2},
{"location":3}
]
var result = 
[
{"referenceId":20,"callerId":1, "location":999},
{"referenceId":21,"callerId":1, "location":123}
]
我的用户可能会更改数据,使阵列如下所示:

var resultBackup =
[
{"location":2},
{"location":3}
]
var result = 
[
{"referenceId":20,"callerId":1, "location":999},
{"referenceId":21,"callerId":1, "location":123}
]
我需要能够仅使用备份阵列中数据的位置字段更新原始阵列,并 将其还原为:

var result = 
[
{"referenceId":20,"callerId":1, "location":2},
{"referenceId":21,"callerId":1, "location":3}
]

使用“lodash”是否可以执行类似操作?

要创建备份阵列,您可以使用或本机将原始对象转换为仅具有一个属性的新对象:

var resultBackup = _.map(result, function(e) { // or result.map(function(e) {
    return {location: e.location};
});
然后,要恢复这些值,需要将结果对象与备份对象合并。Lo Dash规定:

_.forEach(result, function(e, index) {
    _.assign(e, resultBackup[index]);
});
或没有图书馆:

result.forEach(function(e, index) {
    var backup = resultBackup[index];
    for (var prop in backup) {
        e[prop] = backup[prop];
    }
});

是的。没有任何图书馆也很容易做到。注意:是/否问题通常不是很好的堆栈溢出questions@FelixKling-谢谢你的建议。我改变了问题的标题。希望有人能给我举个例子,不管有没有洛达斯。