Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.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
如何将2个javascript对象合并到一个数组中?_Javascript - Fatal编程技术网

如何将2个javascript对象合并到一个数组中?

如何将2个javascript对象合并到一个数组中?,javascript,Javascript,我有这样的物体: { "aa": "11", "bb" : "22", "cc" : "33" } { "aa": "text1", "bb" : "text2", "cc" : "text3" } 我需要把这些合并成这个数组 [ ["text1", "11"], ["text2", "22"], ["text3", "33"] ] 有没有一个简单的方法可以做到这一点 var objects = [{ "aa": "11", "bb": "22", "cc": "33

我有这样的物体:

{ "aa": "11", "bb" : "22", "cc" : "33" }
{ "aa": "text1", "bb" : "text2", "cc" : "text3" }
我需要把这些合并成这个数组

[ ["text1", "11"], ["text2", "22"], ["text3", "33"] ]
有没有一个简单的方法可以做到这一点

var objects = [{
    "aa": "11",
    "bb": "22",
    "cc": "33"
}, {
    "aa": "text1",
    "bb": "text2",
    "cc": "text3"
}];
var result = [];
for (var key in objects[1]) {
    result.push([objects[1][key], objects[0][key]]);
}
console.log(result);
# [ [ 'text1', '11' ], [ 'text2', '22' ], [ 'text3', '33' ] ]

如果对象在两个不同的变量中,像这样

var o1 = { "aa": "11", "bb" : "22", "cc" : "33" },
    o2 = { "aa": "text1", "bb" : "text2", "cc" : "text3" };
然后

如果对象在两个不同的变量中,像这样

var o1 = { "aa": "11", "bb" : "22", "cc" : "33" },
    o2 = { "aa": "text1", "bb" : "text2", "cc" : "text3" };
然后


以下是一些只是为了好玩的JS FP:

var o1 = { "aa": "11", "bb" : "22", "cc" : "33" },
    o2 = { "aa": "text1", "bb" : "text2", "cc" : "text3" };

var values = function(obj) {
    return Object.keys(obj).map(function(key) {
        return obj[key];
    });
};

function zip(arrays) {
    return arrays[0].map(function(_,i){
        return arrays.map(function(array) {
            return array[i];
        });
    });
}

var zipped = zip([
    values(o1),
    values(o2)
]);

console.log(zipped);


PS:
zip
函数实现借用于

这里有一些JS FP只是为了好玩:

var o1 = { "aa": "11", "bb" : "22", "cc" : "33" },
    o2 = { "aa": "text1", "bb" : "text2", "cc" : "text3" };

var values = function(obj) {
    return Object.keys(obj).map(function(key) {
        return obj[key];
    });
};

function zip(arrays) {
    return arrays[0].map(function(_,i){
        return arrays.map(function(array) {
            return array[i];
        });
    });
}

var zipped = zip([
    values(o1),
    values(o2)
]);

console.log(zipped);


PS:
zip
函数实现借用于

一个更简单的方法是:

var a = { "aa": "11", "bb": "22", "cc": "33" };
var b = { "aa": "text1", "bb": "text2", "cc": "text3" };
var c=[];
$.each(a, function (index, value) {
    c.push(a[index], b[index]);
});

PS:使用jQuery

一个更简单的方法是:

var a = { "aa": "11", "bb": "22", "cc": "33" };
var b = { "aa": "text1", "bb": "text2", "cc": "text3" };
var c=[];
$.each(a, function (index, value) {
    c.push(a[index], b[index]);
});

PS:使用jQuery

大家试试这个。希望它对你有用

    var x = { "aa": "11", "bb" : "22", "cc" : "33" }
    var y = { "aa": "text1", "bb" : "text2", "cc" : "text3" }

    var a = [];

    var b = [];

    for(var k in x){ a.push(k);}

    for(var i = 0; i<a.length;i++){
    var c = [];
    c.push(x[a[i]]);
    c.push(y[a[i]]);
    b.push(c);
    c = [];





    }

console.log(b);
var x={“aa”:“11”、“bb”:“22”、“cc”:“33”}
变量y={“aa”:“text1”,“bb”:“text2”,“cc”:“text3”}
var a=[];
var b=[];
对于(var k in x){a.push(k);}

对于(var i=0;i大家试试这个。希望它对你们有用

    var x = { "aa": "11", "bb" : "22", "cc" : "33" }
    var y = { "aa": "text1", "bb" : "text2", "cc" : "text3" }

    var a = [];

    var b = [];

    for(var k in x){ a.push(k);}

    for(var i = 0; i<a.length;i++){
    var c = [];
    c.push(x[a[i]]);
    c.push(y[a[i]]);
    b.push(c);
    c = [];





    }

console.log(b);
var x={“aa”:“11”、“bb”:“22”、“cc”:“33”}
变量y={“aa”:“text1”,“bb”:“text2”,“cc”:“text3”}
var a=[];
var b=[];
对于(var k in x){a.push(k);}


对于(var i=0;i您尝试过什么吗?我知道我当然可以用两个循环来实现这一点,但有没有更简单的方法?定义“更简单”。带循环的三行解决方案对您来说“复杂”吗?
AnArray=[{Objectname:ObjectValue,Objectname2:ObjectValue2},{Objectname:ObjectValue,Objectname2,ObjectValue2}];
然后:
AnArray[Index}].Objectname1
(或2或用于对象名称的任何东西)你是说像这个示例对象数组吗?我想我希望像python zip这样的东西,但是一个简单的循环可以很好地工作。谢谢你尝试了什么?我知道我当然可以用几个循环来完成,但是有没有更简单的方法?定义“更简单”。3行解决方案是使用循环吗对你来说“复杂”?
AnArray=[{Objectname:ObjectValue,Objectname2:ObjectValue2},{Objectname:ObjectValue,Objectname2,ObjectValue2}];
然后:
AnArray[Index#].Objectname1
(或2或用于对象名称的任何内容)你的意思是像这个示例对象数组吗?我想我希望像python zip这样的东西,但是一个简单的循环就可以了。谢谢1。什么是
$
?2.
{}
没有
push
方法,但是,
$
到底是什么?你是使用jquery还是只使用javascript?我不是OP。问题标签中没有任何
jquery
。如果允许使用第三方库,这将是一行解决方案:
.zip
()$是jquery对象1。
$
.2.
{}
没有
push
方法,但是,
$
到底是什么?你使用的是jquery还是javascript?我不是OP。问题标签中没有任何
jquery
。如果允许使用第三方库,这将是一行解决方案:
.zip
()$是jquery对象感谢POST zip实现,这将非常有用。不过我接受了另一个答案,因为它更简单。@zerkms
的功能是什么(551;,I)
的意思是?@Dileep:这是一个匿名函数,它接受两个参数:第一个参数是
\uu
名称,第二个参数是
i
。请记住
.map()
传递值和键-前一个参数是值,第二个参数是键。
\u
只是一个“常规”参数“要丢弃的参数的名称-您可能已经注意到它没有被使用,而只是
i
。一旦我们需要
i
,我们就不能忽略第一个参数,因此需要给它一些名称。PS:询问我的复杂描述是否难以获得:-)@虫族哥们,你脑子里有一台超级计算机..!!花了一段时间才明白,但逻辑很棒;-)@Dileep:不是我-我借的(并为它加了一笔账),但它很“简单”,无论如何都要重新发明,不是吗?谢谢你发布的zip实现,不管怎样都会有用的。我接受了另一个答案,因为它更简单。@zerkms
函数(u,I)
是什么意思?@Dileep:它是一个匿名函数,接受两个参数:第一个参数是
\uu
名称,第二个参数是
I
。记住
.map()
传递值和键-前一个是值,第二个是键
\uu
只是一个要丢弃的参数的“常规”名称-您可能已经注意到它没有被使用,而只是
i
。只要我们需要
i
,我们就不能忽略第一个参数,因此需要给它取个名字。附言:问一下我的复杂描述是不是很难理解:-)@zerkms,伙计,你脑子里有一些超级计算机。。!!花了一段时间才理解,但逻辑非常棒;-)@迪利普:不是我,我借了它(并把它归功于它),但它的“简单”改造反正是不是?