Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/444.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 - Fatal编程技术网

Javascript 如何在循环中将对象合并为一个对象

Javascript 如何在循环中将对象合并为一个对象,javascript,object,Javascript,Object,我有单独的对象,如: Object {au: Object} Object {eu: Object} Object {fr: Object} 等 我如何组合它们,使它们看起来像这样: Object {au: Object, eu: Object, fr: Object, uk: Object, us: Object} 我将数据保存在for循环中,如下所示: for(var i = 0; i < storesListArray.length; ++i) { var stor

我有单独的对象,如:

Object {au: Object}
Object {eu: Object}
Object {fr: Object}

我如何组合它们,使它们看起来像这样:

Object {au: Object, eu: Object, fr: Object, uk: Object, us: Object} 
我将数据保存在for循环中,如下所示:

 for(var i = 0; i < storesListArray.length; ++i) {
     var storeListArray = storesListArray[i];
     for(var j = 0; j < storeListArray.length; ++j) {
         console.log(storeListArray[j]);
     }
 }
for(变量i=0;i
任何一个最好的帮助方法都将非常棒,谢谢。

您可以使用和来获得一个包含阵列各部分的单个对象

var数组=[{au:{},{eu:{},{fr:{}}],
object=object.assign({},…数组);
console.log(对象)您可以使用和来获取包含数组各部分的单个对象

var数组=[{au:{},{eu:{},{fr:{}}],
object=object.assign({},…数组);

console.log(对象)您可以使用jQuery.extend将多个对象合并为一个对象。第一个参数是目标对象,以下参数是要添加到目标的参数:

 var oAll = $.extend({},objA, objB, objC ... )

可以使用jQuery.extend将多个对象合并为一个对象。第一个参数是目标对象,以下参数是要添加到目标的参数:

 var oAll = $.extend({},objA, objB, objC ... )

首先,我将使用来迭代数组的元素

如果您愿意使用jQuery,则在复制对象时可以非常有用

var storeslistaray=[
{en:{a:“某物”,b:“某物”},
{fr:{a:“某物”,b:“某物”},
{au:{a:“某物”,b:“某物”}
]
var ans={};
StoresListaray.forEach(函数(元素){
$.extend(true、ans、element);
})
控制台日志(ans);
console.log(“en:”);
console.log(ans.en)

首先,我将使用来迭代数组的元素

如果您愿意使用jQuery,则在复制对象时可以非常有用

var storeslistaray=[
{en:{a:“某物”,b:“某物”},
{fr:{a:“某物”,b:“某物”},
{au:{a:“某物”,b:“某物”}
]
var ans={};
StoresListaray.forEach(函数(元素){
$.extend(true、ans、element);
})
控制台日志(ans);
console.log(“en:”);
console.log(ans.en)
另一种方法

var列表=[
{en:{a:“某物”,b:“某物”},
{fr:{a:“某物”,b:“某物”},
{au:{a:“某物”,b:“某物”}
]
var bigObj=list.reduce(函数(o,n){
对于(n中的变量键)o[key]=n[key];
返回o;
}, {});
console.log(bigObj)另一种方式

var列表=[
{en:{a:“某物”,b:“某物”},
{fr:{a:“某物”,b:“某物”},
{au:{a:“某物”,b:“某物”}
]
var bigObj=list.reduce(函数(o,n){
对于(n中的变量键)o[key]=n[key];
返回o;
}, {});

console.log(bigObj)
可能重复的I get对象的可能重复{0:Object,1:Object,2:Object,3:Object,4:Object,5:Object}我需要这些键作为代码“keys to the code”,如
ans.en
应该返回带有键
a
b
?var storeMapping={}的对象;forEach(函数(元素){element.forEach(函数(键){jQuery.extend(true,storeMapping,key);});});我得到对象{0:Object,1:Object,2:Object,3:Object,4:Object,5:Object}我需要这些键作为代码“keys to the code”,就像在
ans.en
中一样,应该返回带有键
a
b
?var storeMapping={}的对象;forEach(函数(元素){element.forEach(函数(键){jQuery.extend(true,storeMapping,key);});});