Javascript 如何从AngularJS中的对象数组中创建类似于对象的空对象?

Javascript 如何从AngularJS中的对象数组中创建类似于对象的空对象?,javascript,arrays,json,angularjs,Javascript,Arrays,Json,Angularjs,我有以下对象数组: $scope.users = [ { ID: "1", Name: "Hege", Username: "Pege", Password: "hp", }, { ID: "2", Name: "Peter", Username: "Pan", Password: "pp" } ]; 我需要创建一个类似的空值对象,如下

我有以下对象数组:

$scope.users = [
    {
        ID: "1",
        Name: "Hege",
        Username: "Pege",
        Password: "hp",
    },
    {
        ID: "2",
        Name: "Peter",
        Username: "Pan",
        Password: "pp"
    }
];
我需要创建一个类似的空值对象,如下所示

$scope.newUser = {
    ID: "",
    Name: "",
    Username: "",
    Password: ""
}
这样我就可以将它推送到同一个数组(
$scope.users.push($scope.newUser);
),使它看起来像这样:

$scope.users = [
    {
        ID: "1",
        Name: "Hege",
        Username: "Pege",
        Password: "hp"
    },
    {
        ID: "2",
        Name: "Peter",
        Username: "Pan",
        Password: "pp"
    },
    {
        ID: "",
        Name: "",
        Username: "",
        Password: ""
    }
];
但是,数组
$scope.users
并不总是具有相同对象的数组。即使我将数组更改为其他内容,我也需要它工作,例如:

$scope.users = [
    {
        SID: "pepe",
        Name: "Peter",
        School: "Primary School"
    },
    {
        SID: "hepe",
        Name: "Hege",
        School: "Junior School"
    }
];
我如何才能做到这一点?

假设阵列中总有你想要模拟的东西,获取第一个对象,循环键并生成一个空白对象:

if ($scope.users.length) {
    var defaultUser = $scope.users[0];

    $scope.newUser = {};
    for (var key in defaultUser) {
        $scope.newUser[key] = "";
    }

    $scope.users.push($scope.newUser);
}

您确定数组中只有具有相同结构的对象吗?无论如何,我们不提供清理对象字段的方法,但您可以简单地编写自己的函数为什么要这样做?我知道这不是一个答案,但它似乎违背了我所说的好编程。有一组东西包含未定义的东西。或者如果你有有限数量的东西,那么为它们创建声明。否则,这是最好的了。