Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/456.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 不使用jQuery连接两个JSON对象_Javascript_Angularjs_Json - Fatal编程技术网

Javascript 不使用jQuery连接两个JSON对象

Javascript 不使用jQuery连接两个JSON对象,javascript,angularjs,json,Javascript,Angularjs,Json,我有两个JSON对象,我想用它们创建一个对象,使用Angular或纯JavaScript(无jQuery)。Angular.extend似乎并没有满足我的需求,而是进行了更多的合并 { "field1-1": 1, "field1-2": 2, "field1-3": 3, "field1-4": "four", "field1-5": { "field1-1-1": 5.1, "field1-1-2": 5.2 } } 及 我希望最终结果是: {

我有两个JSON对象,我想用它们创建一个对象,使用Angular或纯JavaScript(无jQuery)。Angular.extend似乎并没有满足我的需求,而是进行了更多的合并

{
  "field1-1": 1,
  "field1-2": 2,
  "field1-3": 3,
  "field1-4": "four",
  "field1-5":
  {
    "field1-1-1": 5.1,
    "field1-1-2": 5.2
  }
}

我希望最终结果是:

{
  "field1-1": 1,
  "field1-2": 2,
  "field1-3": 3,
  "field1-4": "four",
  "field1-5":
  {
    "field1-1-1": 5.1,
    "field1-1-2": 5.2
  }
},
{
  "field2-1": 21,
  "field2-2": 22,
  "field2-3": "three",
  "field2-4":
  {
    "field2-1-1": 4.1,
    "field2-1-2": 4.2
  }
}
所以您需要一个数组:

var array = [object1, object2];
var object1={“field1-1”:1,“field1-2”:2,“field1-3”:3,“field1-4”:“四”,“field1-5”:{“field1-1-1”:5.1,“field1-1-2”:5.2},
object2={“field2-1”:21,“field2-2”:22,“field2-3”:“三”,“field2-4”:{“field2-1-1”:4.1,“field2-1-2”:4.2},
数组=[object1,object2];

write(“”+JSON.stringify(数组,0,4)+“”)除非我弄错了,否则您想要的结果看起来像一个包含两个对象的简单数组:

var objectArray = [ object1, object2 ];

这与将两个对象连接(或合并)为一个对象完全不同(这就是
angular.extend
Object.assign
所做的。

您的最终结果实际上不是有效的JSON。假设对象是名为
object1
object2
的变量,您可以创建如下数组:

"dynamicID": "keyValue",
"object1":
{
  "field1-1": 1,
  "field1-2": 2,
  "field1-3": 3,
  "field1-4": "four",
  "field1-5":
  {
    "field1-1-1": 5.1,
    "field1-1-2": 5.2
  }
},
"object2":
{
  "field2-1": 21,
  "field2-2": 22,
  "field2-3": "three",
  "field2-4":
  {
    "field2-1-1": 4.1,
    "field2-1-2": 4.2
  }
}
谢谢大家


我试图创建一个包含多个对象的聚合对象,作为rest调用的整体对象,从angular发送到一个基于javaEE的API,该API有一个对象作为参数以及rest url的动态变量。我假设这些对象不需要在json中有键,但我错了

所以我现在发送的对象基本上是:

$scope.restObject = {"dynamicID": $scope.keyValue, $scope.object1, $scope.object2}
我只是简单地创建了一个新对象:


似乎你真的想要一个由两个对象组成的数组。我试图创建一个由多个对象组成的聚合对象,作为rest调用的整体对象,从angular发送到一个基于javaEE的API,该API有一个对象作为参数以及rest url的一个动态变量。我假设这些对象不需要我在json中有一个键,但我错了。
"dynamicID": "keyValue",
"object1":
{
  "field1-1": 1,
  "field1-2": 2,
  "field1-3": 3,
  "field1-4": "four",
  "field1-5":
  {
    "field1-1-1": 5.1,
    "field1-1-2": 5.2
  }
},
"object2":
{
  "field2-1": 21,
  "field2-2": 22,
  "field2-3": "three",
  "field2-4":
  {
    "field2-1-1": 4.1,
    "field2-1-2": 4.2
  }
}
$scope.restObject = {"dynamicID": $scope.keyValue, $scope.object1, $scope.object2}