Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/474.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 添加到对象而不是覆盖它_Javascript_Object_Overwrite - Fatal编程技术网

Javascript 添加到对象而不是覆盖它

Javascript 添加到对象而不是覆盖它,javascript,object,overwrite,Javascript,Object,Overwrite,我正在使用以下代码 $scope.createAuction = function () { var auction = { auction: { langData: {} } }; if($scope.selected.tab === $scope.infoTabs[0]) { Object.assign(auction.auction, { type: 'account', layout: $scope.selecte

我正在使用以下代码

$scope.createAuction = function () {
    var auction = { auction: { langData: {} } };

    if($scope.selected.tab === $scope.infoTabs[0]) {
        Object.assign(auction.auction, {
          type: 'account',
          layout: $scope.selected.description
        });
        if(auction.auction.layout === 1) {
            for(var i = 0, l = $scope.langInput.values.length; i < l; i++) {
                auction.auction.langData[$scope.langInput.values[i].selected] = {
                    name: $scope.inputs.auction_name_account[i + 1]
                };
            }
            for(var i = 0, l = $scope.langInput.values.length; i < l; i++) {
                auction.auction.langData[$scope.langInput.values[i].selected] = {
                    description: 'a'
                }
            }
        }
    }
    console.log(JSON.stringify(auction));
}

但是我的代码正在覆盖
“pl”
“eng”
,因此结果是我只能看到描述。

在第二个循环中,插入
描述属性,而不是覆盖对象:

for(var i = 0, l = $scope.langInput.values.length; i < l; i++) {
    auction.auction.langData[$scope.langInput.values[i].selected].description = 'a';
}
for(var i=0,l=$scope.langInput.values.length;i
如果选择,也可以组合循环:

for (var i = 0, l = $scope.langInput.values.length; i < l; i++) {
    auction.auction.langData[$scope.langInput.values[i].selected] = {
        name: $scope.inputs.auction_name_account[i + 1],
        description: 'a'
    };
}
for(var i=0,l=$scope.langInput.values.length;i
for (var i = 0, l = $scope.langInput.values.length; i < l; i++) {
    auction.auction.langData[$scope.langInput.values[i].selected] = {
        name: $scope.inputs.auction_name_account[i + 1],
        description: 'a'
    };
}