我将 2 个数组传递给一个函数,并希望将特定条目从一个数组移动到另一个数组。moveDatum 函数本身使用 underscorejs 的方法拒绝和过滤。我的问题是,原始数组没有更改,就好像我将数组作为值而不是作为参考传递一样。正确移动了特定条目,但正如我所说,效果只是局部的。我必须改变什么,才能改变原始数组?
调用函数:
this.moveDatum(sourceArr, targetArr, id)
函数本身:
function moveDatum(srcDS, trgDS, id) {
var ds = _(srcDS).filter(function(el) {
return el.uid === uid;
});
srcDS = _(srcDS).reject(function(el) {
return el.uid === uid;
});
trgDS.push(ds[0]);
return this;
}
谢谢您的帮助