写一个最简单的function test(data){ const filterData = data.filter(item=> typeof item === 'number') const result = [] for(let index = 0; index < filterData.length; index+=2){ result.push([filterData[index], filterData[index+1]]) } return result } const sourceData = [{}, 77, 0, 76, 0, 75, 0, 74, 0, 73, 0, 72, 0, 71, 0, 70, 0, 69, 1, 68, 1] test(sourceData) // (10) [Array(2), Array(2), Array(2), Array(2), Array(2), Array(2), Array(2), Array(2), Array(2), Array(2)] // 0: (2) [77, 0] // 1: (2) [76, 0] // 2: (2) [75, 0] // 3: (2) [74, 0] // 4: (2) [73, 0] // 5: (2) [72, 0] // 6: (2) [71, 0] // 7: (2) [70, 0] // 8: (2) [69, 1] // 9: (2) [68, 1] // length: 10如果说第一项是包裹的外层那么可以稍微改写一下:function test(data){ const parcel = JSON.stringify(data.shift()).split('') const result = [] for(let index = 0; index < data.length; index+=2){ result.push(parcel[0] + data[index] +',' + data[index+1] + parcel[1]) } return result } const sourceData = [{}, 77, 0, 76, 0, 75, 0, 74, 0, 73, 0, 72, 0, 71, 0, 70, 0, 69, 1, 68, 1] test(sourceData) // (10) ['{77,0}', '{76,0}', '{75,0}', '{74,0}', '{73,0}', '{72,0}', '{71,0}', '{70,0}', '{69,1}', '{68,1}']
写一个最简单的
如果说第一项是包裹的外层那么可以稍微改写一下: