Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/416.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
不使用concat合并Javascript数组_Javascript_Arrays - Fatal编程技术网

不使用concat合并Javascript数组

不使用concat合并Javascript数组,javascript,arrays,Javascript,Arrays,我需要合并两个数组。我能找到的关于组合数组的大多数建议都使用concat。但我不想添加到数组的末尾,我需要将array1中的键/值对添加到array2中的每个对象 我需要合并此阵列1: [ "Basket Abandonment", "Downloads", "App Version" ] 使用此阵列2: [ { bottom: { comp : "", details, : "3.1.39

我需要合并两个数组。我能找到的关于组合数组的大多数建议都使用
concat
。但我不想添加到数组的末尾,我需要将
array1
中的键/值对添加到
array2
中的每个对象

我需要合并此阵列1:

[
    "Basket Abandonment",
    "Downloads",
    "App Version"    
]
使用此阵列2:

[
    {
        bottom: {
            comp : "",
            details, : "3.1.39 22nd Jul 2015",
            status : "",
            title : "Previous Version",
            value : "8.7%"
        },
        top: {
            details: "3.1.40 25th August 2015", 
            status: "", 
            comp: "", 
            title: "Latest Version", 
            value: "86%",
        }
    },
    {
        bottom: {
            value: "469", 
            title: "Total Reviews", 
            status: "neutral", 
            comp: "same", 
            details: "2 New This Week"
        },
        top:  {
            details: "Version 3.1.40", 
            status: "neutral", 
            comp: "same", 
            title: "Average Rating", 
            value: "4.0"
        }
    },  
    {
        bottom: {
            value: "469", 
            title: "Total Reviews", 
            status: "neutral", 
            comp: "same", 
            details: "2 New This Week"
        },
        top:  {
            details: "Version 3.1.40", 
            status: "neutral", 
            comp: "same", 
            title: "Average Rating", 
            value: "4.0"
        }
    }       
]
在一个新的组合数组中,我需要为每个对象添加一个
title
键 使用第一个数组中的值,以使生成的数组如下所示:

[
    {
        title: "Basket Abandonment",
        bottom: {
            comp : "",
            details, : "3.1.39 22nd Jul 2015",
            status : "",
            title : "Previous Version",
            value : "8.7%"
        },
        top: {
            details: "3.1.40 25th August 2015", 
            status: "", 
            comp: "", 
            title: "Latest Version", 
            value: "86%",
        }
    },
    {
        title: "Downloads",
        bottom: {
            value: "469", 
            title: "Total Reviews", 
            status: "neutral", 
            comp: "same", 
            details: "2 New This Week"
        },
        top:  {
            details: "Version 3.1.40", 
            status: "neutral", 
            comp: "same", 
            title: "Average Rating", 
            value: "4.0"
        }
    },  
    {
        title: "App Version",
        bottom: {
            value: "469", 
            title: "Total Reviews", 
            status: "neutral", 
            comp: "same", 
            details: "2 New This Week"
        },
        top:  {
            details: "Version 3.1.40", 
            status: "neutral", 
            comp: "same", 
            title: "Average Rating", 
            value: "4.0"
        }
    }       
]
const mixed = objects.map((obj, index) => (clone = {...obj}, clone.title = titles[index], clone));

您可以在第二个数组中执行一个简单的
for循环
,插入从第一个数组中获取的新
title
属性。但是,如果您希望函数在不修改源的情况下为您提供一个新数组,那么一个解决方案是将新数组作为第二个数组中对象的克隆,并在第一个数组中包含字符串,如下所示:

[
    {
        title: "Basket Abandonment",
        bottom: {
            comp : "",
            details, : "3.1.39 22nd Jul 2015",
            status : "",
            title : "Previous Version",
            value : "8.7%"
        },
        top: {
            details: "3.1.40 25th August 2015", 
            status: "", 
            comp: "", 
            title: "Latest Version", 
            value: "86%",
        }
    },
    {
        title: "Downloads",
        bottom: {
            value: "469", 
            title: "Total Reviews", 
            status: "neutral", 
            comp: "same", 
            details: "2 New This Week"
        },
        top:  {
            details: "Version 3.1.40", 
            status: "neutral", 
            comp: "same", 
            title: "Average Rating", 
            value: "4.0"
        }
    },  
    {
        title: "App Version",
        bottom: {
            value: "469", 
            title: "Total Reviews", 
            status: "neutral", 
            comp: "same", 
            details: "2 New This Week"
        },
        top:  {
            details: "Version 3.1.40", 
            status: "neutral", 
            comp: "same", 
            title: "Average Rating", 
            value: "4.0"
        }
    }       
]
const mixed = objects.map((obj, index) => (clone = {...obj}, clone.title = titles[index], clone));
这里有一个将函数用于数组的示例:

const标题=[
“放弃篮子”,
“下载”,
“应用程序版本”
];
常量对象=[
{
底部:{
公司:“,
详情:“3.1.39 2015年7月22日”,
地位:“,
标题:“上一版本”,
价值:“8.7%。”
},
顶部:{
详情:“3.1.40 2015年8月25日”,
地位:“,
公司:“,
标题:“最新版本”,
值:“86%”,
}
},
{
底部:{
值:“469”,
标题:“全面审查”,
状态:“中立”,
薪酬:“相同”,
详情:“本周新增2个”
},
顶部:{
详细信息:“版本3.1.40”,
状态:“中立”,
薪酬:“相同”,
标题:“平均评级”,
值:“4.0”
}
},
{
底部:{
值:“469”,
标题:“全面审查”,
状态:“中立”,
薪酬:“相同”,
详情:“本周新增2个”
},
顶部:{
详细信息:“版本3.1.40”,
状态:“中立”,
薪酬:“相同”,
标题:“平均评级”,
值:“4.0”
}
}
];
const mix=(o,t)=>o.map((m,i)=>(c={…m},c.title=t[i],c));
const mixed=混合(对象、标题);

控制台日志(混合)输出应该是什么?你能用正确的js格式粘贴这两个数组吗?修复格式,并删除除最小值以外的所有内容,以便问题可以理解。我们不会看穿一堵墙的文字。我知道,这是一个勇敢的问题,但到目前为止你尝试了什么?请格式化你的数组,这是不可能理解的。当你提问时,你可以从中获得帮助。对不起,我从其他地方的另一个问题链接到这里,但忘记了需要更多详细信息。我还修改了格式。