簡體   English   中英

將數組添加到json對象angularjs

[英]Add an array to json object angularjs

我正在嘗試將JSON數組添加到JSON對象。 我的代碼是這樣的

$scope.packageElement = {
    "settings": [
        {
            "showNextPallet": true,
            "isParcelData": false,
            "isFreightData": true,
            "name": 0
        }
    ]
};

dataFromServer = {
    "pData": [
        {
            "PKUNIT": "LP",
            "PKDESC": "LARGE PKG",
            "PKDLEN": 30,
            "PKDWDT": 20,
            "PKDHTG": 20
        }
    ]
};

$scope.packageElement.concat(dataFromServer.pData);

但這會引發錯誤

TypeError: undefined is not a function

在線

$scope.packageElement.concat(dataFromServer.pData);

我想要的輸出是這樣的

var expectedOutPut = {
    "settings": [
        {
            "showNextPallet": true,
            "isParcelData": false,
            "isFreightData": true,
            "name": 0
        }
    ], "pData": [
        {
            "PKUNIT": "LP",
            "PKDESC": "LARGE PKG",
            "PKDLEN": 30,
            "PKDWDT": 20,
            "PKDHTG": 20
        }
    ]
};

誰能指出我在這里做錯了什么?

簡單:

$scope.packageElement.pData = dataFromServer.pData;

$scope.packageElement是一個對象,它沒有concat函數。

或者,更好的選擇是使用angular.extend()

var expectedOutPut = angular.extend({}, $scope.packageElement, {'pData': dataFromServer.pData});

這樣,您將復制對象,而不是修改它們。
注意:請記住,angular.extend不支持遞歸合並(深度復制)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM