向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不支持递归合并(深度复制)
相关文章:
- Javascript(Angular)从一个对象数组到第二个数组查找值
- 根据id将json数组组合为一个json数组
- JavaScript数组包含一个值
- 对一个对象使用reduce可以返回一个没有't在数组中包含目标字母
- jQuery$.inArray()总是返回-1和一个对象数组
- 在数组中的一个元素上设置多个值
- javascript处理一个对象数组以获得一个新的对象数组
- 作为一个二维数组,从ajax接收
- 你能用来自数组的属性名称生成一个对象吗
- 多维关联数组的最后一个索引
- 如何创建一个方法来验证数组的范围
- 循环以检查数组中的最后一个图像
- 在Javascript中将一个值和字符串数组转换为if语句
- 算法:从数组(javascript/angular)中按当前日期获取上一个和下一个事件
- 如何将一个对象添加到每个对象数组中
- 如何创建一个谷歌地图地理坐标数组
- 如何从另一个带下划线的数组中筛选带元素的数组
- 如何在PHP数组中加载下一个youtube
- 查找对象数组是否包含其中一个标记的最快方法
- 如何使用Javascript和Ajax传递一个HTML选择标签到PHP $_POST与一个(数组)var当名称属性是一个