【发布时间】:2015-07-14 19:00:21
【问题描述】:
我正在拼接一个电话类型列表。我有一个由 $scope.phoneTypeList 定义的原始列表。在我的实际应用程序中,我通过 AJAX 获取列表,但我已将其定义为此示例的对象。
然后我有一个名为 $scope.addPhoneType 的空列表。我将 phoneTypelist 中的数据分配到 $scope.addPhoneType 然后运行 for 循环。 for 循环采用用户电话类型的数组。如果它在列表中,它将拼接 addPhoneType。例如,如果用户有 DEFAULT,它将从 addPhoneType 中删除。
我遇到的问题是,当我拼接 addPhoneType 时,它也会拼接 phoneTypeList。例如 phoneTypeList 变成了 =["DDI", "MOBILE","FAX"] ,根本不应该碰它。
就像它绑定到 addPhoneType。我以前从来没有遇到过这种情况?这是正常行为吗?有人有工作吗?在此先感谢,任何建议表示赞赏。
我的代码:
$scope.editCompany = function(){
$scope.phone = [{phone_type_id:"DEFAULT",number:"1123"}]
$scope.phoneTypeList = ["DDI", "DEFAULT", "MOBILE","FAX"];
$scope.addPhoneType =[];
$scope.addPhoneType = $scope.phoneTypeList;
for (x=0;x<$scope.phone.length;x++){
var phoneType = $scope.phone[x].phone_type_id;
var index = $scope.addPhoneType.indexOf(phoneType);
if (index >= 0){
$scope.addPhoneType.splice(index,1);
}
}
console.log($scope.phoneTypeList);
}
【问题讨论】:
标签: javascript angularjs