如何在Javascript中每15个索引合并一个数组

如何在Javascript中每15个索引合并一个数组,javascript,arrays,Javascript,Arrays,我的数据中只有一个数组,如下所示: ["1"] ["2"] ["3"] ["4"] ["5"] ["6"] ["7"] ["8"] ["9"] ["10"] ["11"] ["12"] ["13"] ["14"] [&q

我的数据中只有一个数组,如下所示:

["1"]
["2"]
["3"]
["4"]
["5"]
["6"]
["7"]
["8"]
["9"]
["10"]
["11"]
["12"]
["13"]
["14"]
["15"]
["16"]
我想把它们分成两部分

第1部分:

["1", "2", "3", "4", "5", "6", "7", "8"]
第2部分:

["9", "10", "11", "12", "13", "14", "15", "16"]
当我将它们结合起来时:

[["1", "2", "3", "4", "5", "6", "7", "8"],["9", "10", "11", "12", "13", "14", "15", "16"]]
当我只使用拆分函数来组合数组并将数组分成两部分时,这就足够了吗

如果我的解释无法理解,我向您道歉,您可以再问我一次,谢谢您

您可以将您的数组分成两半,然后使用[].concat…half展平每一半,将它们合并到一个数组中。见下例:

常数arr=[1]、[2]、[3]、[4]、[5]、[6]、[7]、[8]、[9]、[10]、[11]、[12]、[13]、[14]、[15]、[16]; 常数a=arr.0,arr.length/2; 常数b=arr.slicearr.length/2; 常数res=[[].concat…a,[].concat…b]; console.logres 您可以将阵列分成两半,然后使用[].concat…half展平每一半,将它们合并到一个阵列中。见下例:

常数arr=[1]、[2]、[3]、[4]、[5]、[6]、[7]、[8]、[9]、[10]、[11]、[12]、[13]、[14]、[15]、[16]; 常数a=arr.0,arr.length/2; 常数b=arr.slicearr.length/2; 常数res=[[].concat…a,[].concat…b]; console.logres 常数arr=[[1]、[2]、[3]、[4]、[5]、[6]、[7]、[8]、[9]、[10]、[11]、[12]、[13]、[14]、[15]、[16]] newarr=arr.flat res=[newarr.0,8,newarr] console.logres 常数arr=[[1]、[2]、[3]、[4]、[5]、[6]、[7]、[8]、[9]、[10]、[11]、[12]、[13]、[14]、[15]、[16]] newarr=arr.flat res=[newarr.0,8,newarr] console.logres您可以使用,然后将其与Array.prototype.splice拆分。将消耗源阵列,因此与array.slice相比,它的性能更好。你只需要打一次电话。需要注意的一点是,Array.prototype.flat仅在新浏览器中可用,因此如果您希望支持旧浏览器,则可以使用相关文档中提到的替代解决方案或polyfill

常数arr=[1]、[2]、[3]、[4]、[5]、[6]、[7]、[8]、[9]、[10]、[11]、[12]、[13]、[14]、[15]、[16]; const flatArr=arr.flat; console.log[flatArr.0,flatArr.length/2,flatArr] 您可以使用Array.prototype.splice将其拆分。将消耗源阵列,因此与array.slice相比,它的性能更好。你只需要打一次电话。需要注意的一点是,Array.prototype.flat仅在新浏览器中可用,因此如果您希望支持旧浏览器,则可以使用相关文档中提到的替代解决方案或polyfill

常数arr=[1]、[2]、[3]、[4]、[5]、[6]、[7]、[8]、[9]、[10]、[11]、[12]、[13]、[14]、[15]、[16]; const flatArr=arr.flat;
console.log[flatArr.0,flatArr.length/2,flatArr];这真是太棒了@Nick,谢谢你的帮助,所以结论是首先我必须做一个双变量,在我的双数组a和b中做一个符号,然后切片,最后是我必须浓缩我的变量或将其展平,对吗?@LuckALip所以首先你要得到一个a:[[1]、[2]、[3]、[4]、[5]、[6]、[7]、[8]、和b为[[8]、[9]、[10]、[11]、[12],[13], [14], [15], [16]]通过使用slice,然后在这两个半部分上使用.concat或.flat将它们展平,即:删除嵌套数组是的,我理解,你的解决方案很容易理解,再次感谢这是非常棒的@Nick,谢谢你的帮助,所以结论是首先我必须在我的双数组a和b中创建一个符号,并将它们切片,结束f或者最后的结果是我必须把变量浓缩或平铺,对吗?@LuckALip所以首先你得到a是:[[1],[2],[3],[4],[5],[6],[7],[8],[8],[9],[10],[11],[12],[13],[14],[15],[16]]通过使用slice,然后在这两个半部分上使用.concat或.flat将其展平,即:移除嵌套阵列是的,我理解,您的解决方案非常容易理解,再次感谢