Javascript 在没有分区数组的情况下连接两个对象

Javascript 在没有分区数组的情况下连接两个对象,javascript,Javascript,我不知道怎么做,所以任何帮助都将不胜感激。我有两个对象要合并成一个对象。我使用了spread操作符来执行此操作: newObj = {...obj1, ...obj2}; 例如,这给了我以下信息: { [ obj1A{ "item": "stuff", "item": "stuff" }, obj1B{ "item": "stuff", "item": "stuff" } ], [ obj2A{

我不知道怎么做,所以任何帮助都将不胜感激。我有两个对象要合并成一个对象。我使用了spread操作符来执行此操作:

newObj = {...obj1, ...obj2};
例如,这给了我以下信息:

{
  [
    obj1A{
     "item": "stuff",
     "item": "stuff"
    },
    obj1B{
     "item": "stuff",
     "item": "stuff"
    }
  ],
  [
    obj2A{
     "item": "stuff",
     "item": "stuff"
    },
    obj2B{
     "item": "stuff",
     "item": "stuff"
    }
  ]
}
但我想要的是:

 {
      [
        obj1A{
         "item": "stuff",
         "item": "stuff"
        },
        obj1B{
         "item": "stuff",
         "item": "stuff"
        },
        obj2A{
         "item": "stuff",
         "item": "stuff"
        },
        obj2B{
         "item": "stuff",
         "item": "stuff"
        }
      ]
    }

任何人都知道如何做到这一点吗?

使用正确的唯一名称,您可以使用并创建一个新对象

var object1={obj1A:{item1:“stuff”,item2:“stuff”},obj1B:{item1:“stuff”,item2:“stuff”},
object2={obj2A:{item1:“stuff”,item2:“stuff”},obj2B:{item1:“stuff”,item2:“stuff”},
combined=Object.assign({},object1,object2);
控制台日志(组合)

。作为控制台包装{max height:100%!important;top:0;}
使用正确的唯一名称,您可以使用并创建一个新对象

var object1={obj1A:{item1:“stuff”,item2:“stuff”},obj1B:{item1:“stuff”,item2:“stuff”},
object2={obj2A:{item1:“stuff”,item2:“stuff”},obj2B:{item1:“stuff”,item2:“stuff”},
combined=Object.assign({},object1,object2);
控制台日志(组合)

.as控制台包装{max height:100%!important;top:0;}
如果使用jQuery,可以执行类似的操作:


如果您使用的是jQuery,则可以执行类似的操作:

假设您有输入错误(将此
[]
更改为此
{}
),并且键是有效的(不重复),则可以使用扩展语法

var obj1={obj1A:{item:“stuff”,item2:“stuff”},obj1B:{item:“stuff”,item2:“stuff”},
obj2={obj2A:{item:“stuff”,item2:“stuff”},obj2B:{item:“stuff”,item2:“stuff”}
log({…obj1,…obj2})
.as console wrapper{max height:100%!important;top:0;}
假设您有输入错误(将此
[]
更改为此
{}
),并且键是有效的(不重复),则可以使用扩展语法

var obj1={obj1A:{item:“stuff”,item2:“stuff”},obj1B:{item:“stuff”,item2:“stuff”},
obj2={obj2A:{item:“stuff”,item2:“stuff”},obj2B:{item:“stuff”,item2:“stuff”}
log({…obj1,…obj2})

。作为控制台包装{最大高度:100%!重要;顶部:0;}
请添加有效对象。数组没有文字语法的属性。请添加有效的对象。数组没有文本语法中的属性。当然,如果这是对象的形状,那么原始技术在这里也同样适用:
combined={…object1,…object2}
。所以我怀疑这里还发生了别的事情。@ScottSauyet,实际上并不是所有的用户代理都有。哦,我从来没有意识到。只是旧的吗?谢谢。我最近才重新开始使用浏览器。最近节点过多;与一个evergreen代理一起工作非常方便!接受这个答案,因为它对所问的问题是正确的。虽然这不能解决我的问题。我已经在使用spread操作符,不管兼容性如何,它都会做同样的事情。我想我会提出一个更具体的问题。为最初问题的一般性道歉。当然,如果这是对象的形状,那么原始技术在这里也同样适用:
combined={…object1,…object2}
。所以我怀疑这里还发生了别的事情。@ScottSauyet,实际上并不是所有的用户代理都有。哦,我从来没有意识到。只是旧的吗?谢谢。我最近才重新开始使用浏览器。最近节点过多;与一个evergreen代理一起工作非常方便!接受这个答案,因为它对所问的问题是正确的。虽然这不能解决我的问题。我已经在使用spread操作符,不管兼容性如何,它都会做同样的事情。我想我会提出一个更具体的问题。对最初问题的概括性表示歉意。问题指出这不起作用。因此,我怀疑原始对象并非如建议的那样。(这不仅仅是一个括号的改变。)问题指出这不起作用。因此,我怀疑原始对象并非如建议的那样。(这不仅仅是括号的改变。)
var a = { 
   propertyOne: 'One',
   propertyTwo: 'Two'
};

var b = { 
   propertyThree: 'Three',
   propertyFour: 'Four'
}

var c = $.extend(a, b);

console.log(c);