我有两个数组,分别叫做“objects”和“appliedObjects”。我正在尝试使用JavaScript和/或Angular找到一种优雅的方法将对象从一个数组移动到另一个数组。
最初我做了以下操作:
$scope.remove = function () {
angular.forEach($scope.appliedObjects, function (element, index) {
if (element.selected) {
element.selected = false;
$scope.objects.push(element);
$scope.appliedObjects.splice(index, 1);
}
});
}
$scope.add= function () {
angular.forEach($scope.objects, function (element, index) {
if (element.selected) {
element.selected = false;
$scope.appliedObjects.push(element);
$scope.objects.splice(index, 1);
}
});
}
但后来我意识到,当从循环数组中移除该值时,它不会添加或删除任何其他项,因为它是按索引进行的。
然后,我尝试使用临时数组来存储要添加或删除的项目列表,但我开始遇到奇怪的引用问题。
我开始在这个问题上有些纠结了......非常感谢任何帮助和/或指导。
function (element, index) {...}
,或者在您的情况下element可以是对象。 - micnil