添加多个元素时,只有最后一个元素被添加到javascript对象

添加多个元素时,只有最后一个元素被添加到javascript对象,javascript,angularjs,Javascript,Angularjs,我正在尝试向javascript对象添加多个值。这就是我正在做的: $scope.newMappings.sChannel = 'EST'; $scope.newMappings.sFormat = 'HD'; $scope.newMappings.sASIN = ''; $scope.newMappings.sLocalDescription = ''; insertList

我正在尝试向javascript对象添加多个值。这就是我正在做的:

            $scope.newMappings.sChannel = 'EST';
            $scope.newMappings.sFormat = 'HD';
            $scope.newMappings.sASIN = '';
            $scope.newMappings.sLocalDescription = '';
            insertList.push($scope.newMappings);
            $scope.newMappings.sChannel = 'EST';
            $scope.newMappings.sFormat = 'SD';
            $scope.newMappings.sASIN = '';
            $scope.newMappings.sLocalDescription = '';
            insertList.push($scope.newMappings);
            $scope.newMappings.sChannel = 'EST';
            $scope.newMappings.sFormat = '4K';
            $scope.newMappings.sASIN = '';
            $scope.newMappings.sLocalDescription = '';
            insertList.push($scope.newMappings);
            $scope.newMappings.sChannel = 'VOD';
            $scope.newMappings.sFormat = 'HD';
            $scope.newMappings.sASIN = '';
            $scope.newMappings.sLocalDescription = '';
            insertList.push($scope.newMappings);
            $scope.newMappings.sChannel = 'VOD';
            $scope.newMappings.sFormat = 'HD';
            $scope.newMappings.sASIN = '';
            $scope.newMappings.sLocalDescription = '';
            insertList.push($scope.newMappings);
            $scope.newMappings.sChannel = 'VOD';
            $scope.newMappings.sFormat = 'HD';
            $scope.newMappings.sASIN = '';
            $scope.newMappings.sLocalDescription = '';
            insertList.push($scope.newMappings);

然而,只有最后的记录被添加。我只得到sChannel作为“Vod”和sFormat作为“HD”的值。谁能告诉我我做错了什么吗

您可以在纯javascript中执行此操作。将对象添加到列表中。您需要分别创建每个对象

var list = [
    { date: '04/1/2018', id: 3, user: 20055 },
    { date: '04/7/2018', id: 5, user: 20053 },
    { date: '04/11/2018', id: 6, user: 45652 }
];

alert(list[0].id);

每次添加到列表中后,都需要创建新对象

$scope.newMappings={};
        $scope.newMappings.sChannel = 'EST';
                $scope.newMappings.sFormat = 'HD';
                $scope.newMappings.sASIN = '';
                $scope.newMappings.sLocalDescription = '';            
                insertList.push($scope.newMappings);

                $scope.newMappings={};

                $scope.newMappings.sChannel = 'EST';
                $scope.newMappings.sFormat = 'SD';
                $scope.newMappings.sASIN = '';
                $scope.newMappings.sLocalDescription = '';
                insertList.push($scope.newMappings);

                $scope.newMappings={};

                $scope.newMappings.sChannel = 'EST';
                $scope.newMappings.sFormat = '4K';
                $scope.newMappings.sASIN = '';
                $scope.newMappings.sLocalDescription = '';
                insertList.push($scope.newMappings);

                $scope.newMappings={};

                $scope.newMappings.sChannel = 'VOD';
                $scope.newMappings.sFormat = 'HD';
                $scope.newMappings.sASIN = '';
                $scope.newMappings.sLocalDescription = '';
                insertList.push($scope.newMappings);

                $scope.newMappings={};

                $scope.newMappings.sChannel = 'VOD';
                $scope.newMappings.sFormat = 'HD';
                $scope.newMappings.sASIN = '';
                $scope.newMappings.sLocalDescription = '';
                insertList.push($scope.newMappings);

                $scope.newMappings={};

                $scope.newMappings.sChannel = 'VOD';
                $scope.newMappings.sFormat = 'HD';
                $scope.newMappings.sASIN = '';
                $scope.newMappings.sLocalDescription = '';
                insertList.push($scope.newMappings);

你只是一次又一次地更改同一个对象,每次都需要创建一个新对象。@csmckelvey你能举一些例子帮助我理解这里的错误吗?