Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/389.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.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_Arrays - Fatal编程技术网

Javascript:如何将数组元素扩展到所有其他元素并生成单个数组

Javascript:如何将数组元素扩展到所有其他元素并生成单个数组,javascript,arrays,Javascript,Arrays,我有一个类似 var arr = [["one", "two"],["three", "four"],["five", "six", "seven"],["eight", "nine"]]; 我试图让所有元素联合元素,但同一子数组中的元素不能复制。比如: var output = ["one three four five six seven eight nine","two three four five six seven eight nine"]; 这将根据第一个子数组中的元素数进行添

我有一个类似

var arr = [["one", "two"],["three", "four"],["five", "six", "seven"],["eight", "nine"]];
我试图让所有元素联合元素,但同一子数组中的元素不能复制。比如:

var output = ["one three four five six seven eight nine","two three four five six seven eight nine"];
这将根据第一个子数组中的元素数进行添加。 我试过了,但找不到任何解决办法。有人能帮忙吗?
这是我尝试过的代码:

function big_for( data ){
    var aj = [];
    var k = 0;
    for( var i = 0; i < data.length; i++ ){
        for( var j = 0; j < data[i].length; j++ ){
            aj[k] = data[i][j];
            k++;
        } 
    }
    return arr;
    }
用于(数据)的函数大{ var aj=[]; var k=0; 对于(变量i=0;i 提前谢谢

对不起@Andy

var arr = [["one", "two"],["three", "four"],["five", "six", "seven"],["eight", "nine"]];

var base = arr.shift();
var result = base.map(function(init) {
    return [].concat.apply([], [init].concat(arr)).join(' ');
});
抱歉@Andy

var arr = [["one", "two"],["three", "four"],["five", "six", "seven"],["eight", "nine"]];

var base = arr.shift();
var result = base.map(function(init) {
    return [].concat.apply([], [init].concat(arr)).join(' ');
});

可能是重复的:然后是“三一二四五六七八九”吗?如果没有,我看不到你的输入和预期输出之间的相关性。你可以展平你的数组。这可能就是答案@RafaelGrillo,看看预期的输出。简单的展平不是答案。输出必须是第一个子数组的元素和所有其他元素。输出中的前一个数组数将是第一个子数组的计数。明白了。可能是重复的:然后是“三一二四五六七八九”吗?如果没有,我看不到你的输入和预期输出之间的相关性。你可以展平你的数组。这可能就是答案@RafaelGrillo,看看预期的输出。简单的展平不是答案。输出必须是第一个子数组的元素和所有其他元素。输出中的前一个数组数将是第一个子数组的计数。明白了。哦,我以前没有用过
shift
concat
。你能解释一下吗。哦,是的,这奏效了。!谢谢Shift将删除数组的第一个元素并返回它。Concat将简单地将一个数组与另一个数组连接起来,如果我需要第二个数组为genderal。?现在第一个是gendral。哦,我以前没有用过shift和concat。你能解释一下吗。哦,是的,这奏效了。!谢谢Shift将删除数组的第一个元素并返回它。Concat将简单地将一个数组与另一个数组连接起来,如果我需要第二个数组为genderal。?第一个是性别。