Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/20.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_Regex - Fatal编程技术网

Javascript 如何将一个数组转换为多个数组

Javascript 如何将一个数组转换为多个数组,javascript,regex,Javascript,Regex,我有一个数组abc=[1,2,3] 如何将其转换为多个数组:[1,2],[1,3],[2,3] 注意:如果abc有n个项目,我们将转换为n*(n-1)个数组 const combinations = arr => arr.flatMap((elX, indexX) => arr .filter((_, indexY) => indexY == indexX) .map(elY => [elX, elY

我有一个数组abc=[1,2,3]

如何将其转换为多个数组:[1,2],[1,3],[2,3]


注意:如果abc有n个项目,我们将转换为n*(n-1)个数组

const combinations = arr =>
    arr.flatMap((elX, indexX) =>
        arr
            .filter((_, indexY) => indexY == indexX)
            .map(elY => [elX, elY])
    )

结果将是n*(n-1),因此对于[1,2,3]=[[1,2],[1,3],[2,1],[2,3],[3,1],[3,2],

看起来您想要列出从原始数组进行的所有类型的组合 您可以在控制台中运行下面的代码,检查它是否符合您的需要

注意,在下面的代码中,我使用filter来避免相同数组组中的相同值 对不起,我英语不好

让arr=[1,2,3];
arr=arr.map((当前值、索引、arr)=>{
返回arr.filter((val2,idx2)=>val2!==currentValue);
});

write(JSON.stringify(arr,null,4))
4
呢?你试过什么?按照你的要求,应该是6个数组,但是你只提到了3个,你能提到其他3个吗?这样我们就知道了模式。请添加您尝试的代码作为您的努力。对不起,我有一个错误,它应该是[1,2,3]。我改变了它,它给出了3个数组,而不是要求的6个。是的,它给出了3个数组,但我按照他的例子1 2 3,发现可能他不想要任何镜像组合。。。所以我给了这个,但是如果他真的想要6个数组,他只需要选择其他可以完美回答他的问题的答案,但是谢谢你的评论