【发布时间】:2015-02-15 03:35:44
【问题描述】:
我有这段代码
$scope.addToOrder = function(index) {
var tempItem = $scope.item;
if (tempItem[index].validate == true){
if (_.isEmpty($scope.item2) == true) {
$scope.item2.push(tempItem[index]);
} else {
for (var i = 0; i < $scope.item2.length; i++) {
if ($scope.item2[i] == tempItem[index]) {
break;
}
if (i == $scope.item2.length - 1) {
$scope.item2.push(tempItem[index]);
}
}
}
}
}
我想将数据从一个对象推送到另一个对象(item 到 item2),效果很好,但是当我从 item 更改数据时 item2 也会更新我不想要这个。
我错过了什么?
【问题讨论】:
-
顺便说一句,
if (tempItem[index].validate == true)与if (tempItem[index].validate)的含义相同。如果你想比较严格等于布尔真,你应该使用if (tempItem[index].validate === true)。
标签: javascript angularjs angularjs-scope javascript-objects