2014-12-09 62 views
0

我需要将2个空的person对象添加到数组中并填充它之后。 Chrome抱怨TypeError: object is not a function at new <anonymous>。怎么了?TypeError:对象不是新的函数<anonymous>

$scope.person = { 
     firstName : '', 
     lastName : '', 
     dateOfBirth : '', 
     sex : '', 
     nationality : '' 
    }; 
    $scope.persons = []; 
    $scope.persons.push(new $scope.person); // error 
    $scope.persons.push(new $scope.person); 
+1

正是它所说的。 '$ scope.person'不是一个构造函数,所以你不能创建它的一个新实例。 – Quentin 2014-12-09 11:55:23

+0

你似乎试图克隆该对象。作为副本结束。 – Quentin 2014-12-09 11:55:43

回答

1
$scope.persons.push(angular.copy($scope.person)); 
$scope.persons.push(angular.copy($scope.person)); 

你需要一个person对象的副本,你不能使用new关键字与它

在Java中,你可以使用class来创建对象,创建一个对象,你可以处理后它,但你不能从对象创建一个新的对象。像明智的$scope.person是一个对象。你不能使用new关键字。

相关问题